..Dies ist die Dokumentation im HyperMake (MakeIPF)-Format. ..Aus dieser Datei kann eine HTML oder IPF-Datei ..erzeugt werden. Lesen Sie bitte README.1ST. .. In diesem Quelltext der Doku sind viele IF-Bedingungen. Der in diesen .. Bedingungen enthaltene Text wird nur in der Doku aufgenommen, wenn .. die Bedingung beim Erstellen mit HMAKE als Kommandozeilenparamter .. eingegeben wird: .. #HTMLDOC erzeugt spezifische Doku fr die Erstellung von .. HTML-Texten .. #IPFDOC fr IBM IPF .. #HLPDOC fr kontext-sensitives IBM IPF (HLP) .. #WORDSTARDOC wenn fr den Quelltext der alte DOS WordStar 4.0 .. benutzt wird ..Falls Sie trotzdem den Rohtext als "Anf„nger" anschauen m”chten, ..folgende Hinweise: ..Punktbefehle beginnen mit einem Punkt und werden nur interpretiert, ..wenn sie unmittelbar am Anfang der Zeile stehen. In diesem Text werden ..viele Punktbefehle absichtlich ausgedruckt und nicht interpretiert, ..weil davor noch ein Leerzeichen steht. ..Kapitelberschriften wird ein .n vorangestellt, wobei n die Hierarchie ..angibt (1 bis 6). Das Zeichen ę markiert W”rter fr den Index und als ..Querverweis-Ziel, ę:Wort1 Wort2: markiert einen Ausdruck. ..Die restlichen Sonderzeichen sind Umschalter (Toggles), z. B. fr ..fette Schrift. .TI Dokumentation HyperMake 3.0 .fu[] .btØ reddot .ftØ .stę .1 Einfhrung HyperMake (frher MakeIPF) dient der einfachen Erstellung von Dateien im HTML- und IPF-Format. Statt direkt HTML-Dateien oder IPF-Dateien zu editieren, wird ein ASCII-Rohtext erstellt, der weitaus weniger Kommandos erh„lt. Querverweise werden automatisch gezogen, mit nur einem Befehl werden Fenster verschiedener Gliederungsebenen gleichzeitig angezeigt ("Frames"), am Ende eines Kapitels wird automatisch auf Unterkapitel verwiesen und vieles mehr. Die Version 3.0 ist das erste "major release", , das auch HTML-Dateien erzeugen kann. Aus nur einem Quelltext lassen sich sowohl HTML- als auch wie bisher IPF-Dateien erzeugen. Neu sind auįerdem Tables (Tabellen) als auch eine Rckw„rts-Konvertierung von IPF nach HyperMake. Dies ist dann sinnvoll, wenn eine Dokumentation schon im IPF-Format vorliegt. HyperMake existiert derzeit als Win32 (Windows 95 und NT) und als OS/2-Versionen. Knftige Versionen wird es unter weiteren Betriebssystemen geben. HyperMake ist nicht in erster Linie dafr gedacht, eine einzelne kleine Homepage zu schreiben. Seine St„rke liegt in der Erstellung gr”įerer Dokumente wie komples Homepages, wissenschaftliche Arbeiten oder Programmdokumentationen mit Inhaltsverzeichnis und Stichwortverzeichnis (Index). Wenn Sie HyperMake verwenden, mssen Sie lediglich das vergleichsweise einfache HyperMake-Format erlernen. Sie k”nnen HyperMake Quelltexte erstellen mit ž einem ASCII-Editor mit autom. Zeilenumbruch ž einem ASCII-Editor ohne autom. Zeilenumbruch ž oder einem alten DOS WordStar Version 3.4 oder 4. HyperMake hat einige leistungsstarke Features zu bieten: ž Automatische Querverweis- und Index-Erstellung Das Markieren eines Wortes oder eines Ausdrucks mehrerer W”rter mit einem speziellen Zeichen hat zur Folge: - Querverweise (engl. links) von allen gleichlautenden Ausdrcken im Text zur markierten Textstelle hin - einen entsprechenden Eintrag im Index (zu deutsch Stichwortverzeichnis). .IF HTMLDOC ž Automatische Zerlegung in zahlreiche HTML-Dateien Beim Erzeugen von HTML-Dateien wird eine Quelldatei in zahlreiche einzelne HTML-Dateien zerlegt. Dies fhrt zu h”herer Performance bei der Benutzung von Browsern. Weder der Autor des Textes noch der Betrachter merkt etwas davon. .END .IF IPFDOC ž Automatische Erstellung von Helptables Fr OS/2 HLP-Dateien drfen in den HyperMake ASCII-Quelltext direkt ID Konstanten wie "ID_buttonOK" eingetragen werden, um eine Verbindung zwischen dem Knopf und der erl„uternden Textpassage herzustellen. HyperMake generiert eine Helptable-Datei, die in die RC-Datei eingebunden werden kann. .END ž Automatische Erstellung von Querverweisen zu Unterkapiteln .sno Am Ende eines Hauptkapitels, vor dem ersten Unterkapitel, werden Querverweise zu allen Unterkapiteln und zum n„chsten Hauptkapitel erstellt. .sn ž Automatische Anordnung von Kapiteln verschiedener Gliederungsebenen am Bildschirm Mit nur einem kurzen Befehl erhalten die folgenden Kapitel je nach Gliederungsebene verschiedene Positionen und Gr”įen am Bildschirm - es werden also Kindfenster (engl. Frames) generiert. Zwei oder gar drei Fenster verschiedener Gliederungsebenen, also Kapitel, Unterkapitel, Unterunterkapitel, erscheinen so gleichzeitig, vgl. Beispiel Fensteranordnung. ž Einfache Erstellung von Fuįnoten Bei HTML werden Fuįnoten ber Frames realisiert, bei IPF ”ffnet sich pro Fuįnote ein kleines Fuįnotenfenster. ž Tables (Tabellen) Tabellen werden wie bei einer ASCII-Datei mit festen Schritten eingegeben. HyperMake setzt dies in HTML- bzw. IPF-Tabellen um. ž Automatisches Linienziehen, um K„stchen zu erstellen ž Kurze, einfache Befehle - fr Kapitelberschriften und deren Gliederungsebene - um Schriften auszuw„hlen - um Grafiken allein oder im Flieįtext auszugeben - um unsortierte Listen / sortierte Listen (engl. unordered lists / ordered lists) zu generieren. (Dies hier ist eine zweistufige unsortierte Liste.) In dieser Version 2.9 fehlt noch die Untersttzung von Tabellen (Tables) sowohl fr HTML als auch fr IPF. Dies ist fr 3.0 vorgesehen. .2 HTML-Dateien, Web-Browser und Internet .in Dateiformat HTML .in HTML-Datei Die ę:Hypertext-Markup-Language HTML: ist ein plattformbergreifendes Dateiformat fr Texte. Es handelt sich um einen ASCII-Text, in den mit spitzen Klammern <> Kommandos eingestreut sind. Wichtigstes Merkmal sind die Querverweise, sog. Links. Um HTML-Dateien zu betrachten, ben”tigt man Browser. In der Regel befinden sich die Dateien nicht lokal auf dem eigenen Rechner, sondern im Internet. Trotzdem aber l„įt sich das HTML-Format dazu benutzen, lokal gespeicherte Daten wie Programmdokumentationen oder Nachschlagewerke anzuschauen. Der aktuelle Entwicklungsstand von HTML ist 3.2. Dieser Stand wird von HyperMake untersttzt. Die wichtigste Neuerung sind Frames (Fensteranordnung). Mit HyperMake erzeugte HTML-Dateien, die Frames enthalten, k”nnen auch mit „lteren Browsern betrachtet werden, dann natrlich ohne Frames. .2 IPF, INF und HLP-Dateien .in Dateiformat IBM INF .in Dateiformat IBM HLP .in Dateiformat IBM IPF .in IPF-Datei HTML Browser sind langsam und schwerf„llig. IBM INF und HLP Dateien sind kompakte Bin„rdateien. Der Viewer (Betrachter) ist klein und sehr schnell. IBM INF Viewer gibt es fr OS/2 (das Format aller OS/2-Programmdokumentationen), fr Win16 und fr DOS. Der Win16 Viewer ist Teil des Pakets "Just add Warp"; es werden die Dateien LIBIPFX.DLL, VIEW.EXE und VIEWH.HLP ben”tigt. Der DOS Viewer ist in IBM DOS 7 enthalten und es gibt auch ein Freewareprogramm (VIEW01.ZIP Compuserve OS2DF1). Um IBM INF-Dateien zu erstellen, ben”tigen Sie den IBM IPFC Compiler (von IPF nach INF). Dieser ist Bestandteil von OS/2-Entwicklungssystemen, es soll ihn aber auch fr Windows geben.[Die Windows-Version ist Bestandteil des IBM Visual Age C++ Entwicklungssystems.] Im Vergleich zu HTML-Browsern haben die IBM INF Viewer einige leistungsstarke Features, die vor allem bei groįen Dokumenten zum Tragen kommen: ž der Index ist Bestandteil des bin„ren INF Formates ž ebenso das Inhaltsverzeichnis, Kapitelberschriften lassen sich wie Verzeichnisb„ume auf- und zuklappen ž sehr schnelle Such-Funktion: Da intern jedes Wort nur einmal gespeichert ist und Zeiger auf die tats„chlichen Textstellen zeigen, k”nnen mehrere MB pro Sekunde nach bestimmten W”rtern abgesucht werden. Der Benutzer erh„lt dann ein Auswahlfenster mit allen Kapiteln, in denen der Suchbegriff vorkommt. ž Mehrere INF-Dateien k”nnen per Kommandozeilenparameter "zusammengeh„ngt" werden, so daį fr den Benutzer eine groįe Hilfedatei mit entsprechend vergr”įertem Inhaltsverzeichnis und Index entsteht. Die wichtigen HTML-Features wie Tables, Frames, Bilder usw. sind alle auch im IBM INF-Format enthalten. Der Inhalt von IBM INF- und HLP-Dateien wird in einer Sprache namens IPF eingegeben, „hnlich HTML. Es ist ein m„chtiges Werkzeug, mit dem praktisch alles machbar ist, was in einem solchen Hypertext denkbar ist. Allerdings ist diese Eingabesprache ziemlich umst„ndlich und hat kaum eine Eigenintelligenz. Deshalb findet man als OS/2-Anwender h„ufig farblose Hypertexte, die z. B. fast keine Querverweise enthalten. Die Dokumentation zum IPF-Format gibt es nur in englischer Sprache, so daį manche Benutzer dabei ihre Schwierigkeiten haben. HyperMake erleichtert Ihnen die Erstellung von IBM INF-Dateien[Das IBM information format ist ein Hypertext-Format, insbesondere fr Programmdokumentationen.] und HLP-Dateien[Das HLP-Format ist „hnlich dem INF-Format, erm”glicht aber Verbindungen zwischen dem zu beschreibenden Programm und dem Hypertext. HLP-Dateien sind sozusagen Bestandteil des Anwenderprogramms.]. HyperMake generiert IPF[Das IPF Format (Information Presentation Facility) ist der Ausgangstext, um INF- oder HLP-Dateien zu erstellen.] Dateien von einem speziellen HyperMake ASCII-Format. Aus einer solch automatisch erstellten IPF-Datei wird dann mit dem IBM-Programm ęIPFC[IPFC ist Bestandteil jedes OS/2 Programm-Entwicklungssystems. Auf meinem Rechner sind es die Dateien IPFC.EXE, IPFC20.INF und IPFCEXMP.INF sowie ein Verzeichnis IPFC mit l„nderspezifischen Informationen.] die INF- oder HLP-Datei erzeugt. .1 Erstellen eines HyperMake Quelltextes .in Erstellen eines HyperMake Quelltextes .FA verti 25 .2 Grundlagen .3 Punktbefehle Das HyperMake-Format verwendet ę:Punktbefehl:e wie der gute alte DOS WordStar. Ein Punktbefehl ben”tigt eine eigene Zeile und beginnt mit einem Punkt, zum Beispiel .snb .SN .sn stellt die Normalschrift auf den Standardwert (engl. default). Punktbefehle k”nnen sowohl mit Klein- als auch mit Groįbuchstaben geschrieben werden. Viele Punktbefehle erwarten die Eingabe von Parametern, z. B. .snb .LM10 .sn verstellt den linken Rand auf 10. Dabei darf auch ein Leerzeichen zwischen Punktbefehl und Parameter stehen. Die Zeile .snb ..Kommentar .sn wird ignoriert. Wenn Punktbefehle aus mehr als zwei Buchstaben bestehen, mssen Sie nur die ersten zwei Buchstaben unbedingt schreiben. Beginnt ein Punktbefehl nicht in der ersten Spalte, so wird er nicht interpretiert, sondern erscheint im Flieįtext. In diesem Hypertext befindet sich ein Verzeichnis aller Punktbefehle. .IF IPFDOC .3 IPF-Befehle .snb .:IPFbefehl. .:IPFbefehl. Ausdruck .sn Sie k”nnen IPF-Befehle direkt eingeben (was jedoch eher die Ausnahme ist, da alle wichtigen Kommandos Bestandteil des einfacheren HyperMake Formates sind.) .END IPFDOC .sab .IF HTMLDOC .3 HTML-Befehle Die folgenden zwei Befehle sind dann fr Sie sinnvoll, wenn Sie mit HTML-Befehlen vertraut sind und fr einzelne Teilaufgaben diese den HyperMake-Befehlen vorziehen. .snb .HTML Flieįtext usw. .HYPERMAKE .sn Sie k”nnen auch direkt HTML-Text und -Kommandos schreiben - z. B. fr ę:Java-Skript:s, er wird ohne Žnderung bernommen. Als weitere M”glichkeit bietet HyperMake die direkte Verwendung von in spitzen Klammern direkt im Flieįtext: Mit dem Punktbefehl HTML command .snb .HC an (on) .HC aus (off) .sn k”nnen im Flieįtext HTML-Kommandos in den HTML-blichen spitzen Klammern eingegeben werden. Innerhalb der spitzen Klammern werden die Zeichen so ausgegeben, wie sie im Quelltext stehen. Standardm„įig ist ~.HC~ ausgeschaltet, d.h. die spitzen Klammern stellen normale Zeichen dar, die in der HTML-Datei ausgedruckt werden. Wenn Sie mit HTML vertraut sind, k”nnen Sie ~.HC an~ einmal aktivieren und eingeschaltet lassen, so lange Sie im Flieįtext keine spitzen Klammern verwenden m”chten. .END HTMLDOC .3 Umschaltzeichen .in Umschaltzeichen .in toggle .in Zeichen fr Umschalter In der Ini-Datei k”nnen Sie einige Umschaltzeichen (engl. toggle char) definieren. Zwischen zwei identischen Umschaltzeichen wird eine bestimmte Funktion aktiviert, beispielsweise "fett". Wenn Sie in der Ini-Datei "*" fr "fett" und " @" fr "italic" (d. h. schr„g) eingestellt haben, k”nnen Sie schreiben: .snb Dieser *Teil des Satzes* ist besonders wichtig. .sn Sie erhalten dann: Dieser Teil des Satzes ist besonders wichtig. Sie k”nnen Umschaltzeichen auch berlagert verwenden: .snb Das ist *fett und @gleichzeitig italic* und nur italic@. .sn Das ist fett und gleichzeitig italic und nur italic. Sinnvoll sind bei der Verwendung der IBM Codepage die Steuerzeichen unter ASCII dezimal 32, wenn der verwendete Editor diese untersttzt,[natrlich ohne 0x0A, 0x0D, 0x1A (dezimal 10, 13, 26)] und bei HTML die Zeichen oberhalb von ASCII dezimal 127. Umschaltzeichen sollten nur selten anderweitig im Text verwendet werden. Wenn Sie ein Umschaltzeichen ausdrucken und nicht interpretiert haben wollen, mssen Sie es zweimal hintereinander schreiben: .snb @Meine Email-Adresse:@ 100661.626@@compuserve.com .sn .3 Bedeutung von Returns .in Bedeutung von Returns .in ASCIIHARDRET .in ASCIISOFTRET Wenn Sie einen HyperMake-Quelltext mit einem ASCII Editor schreiben, k”nnen Sie zwischen zwei verschiedenen Arten w„hlen, wie Returns (Zeilenvorschbe) interpretiert werden sollen. Mit der ASCIIHARDRET Einstellung in der Ini-Datei, Abschnitt source format, wird jeder Return auch tats„chlich als eine neue Zeile verstanden. W„hlen Sie diese Einstellung, wenn Ihr Editor zu lange Zeilen automatisch in die neue Zeile umbricht, ohne aber selbst„ndig Return-Steuerzeichen in den Text zu schreiben. Der OS/2 E und EPM Editor untersttzen dies ("Optionen - Zeilenumbruch ein"). Andernfalls verwenden Sie besser ASCIISOFTRET. Das interpretiert ein Return-Steuerzeichen nur dann als wirkliche neue Zeile, wenn ž zwei Returns direkt aufeinander folgen (also eine Leerzeile eingefgt ist) ž das letzte Zeichen in der vorangegangenen Zeile . ! ? : ; ist. .IF WORDSTARDOC Wenn Sie den Quelltext mit einem DOS WordStar schreiben, gibt es solche Probleme nicht, weil WordStar zwischen harten und weichen Returns unterscheidet. .END Auf meiner Homepage finden Sie demn„chst Makro-Dateien fr ęWinword zur leichten Konvertierung von Winword-Textdateien in den HyperMake Quelltext. .2 Textanfang Jedes Dokument hat einen ęTitel. Dieser erscheint als Titel des Hauptfensters und auch in der Fensterliste. .snb .TI Dokumentation von meinem Programm .sn legt den Titel der HTML-Datei bzw. INF-Datei fest. Jeder HyperMake-Quelltext, mit dem eine INF-Datei erstellt wird, muį mit einem solchen Titel beginnen, noch vor der ersten Kapitelberschrift. .IF HTMLDOC HyperMake erzeugt aus nur einer Quelldatei mehrere HTML-Dateien. Jede HTML-Datei erh„lt den selben Titel. .END .IF IPFDOC Bei HLP-Dateien wird der Titel ber den Programm-Quelltext festgelegt (siehe function InitHelp). Der Titel-Punktbefehl im HyperMake-Quelltext wird ignoriert. In HLP-Dateien werden standardm„įig die Tasten "Inhalt", "Zurck" und "Vorw„rts" ausgeblendet. Wenn Sie die gleichen Tasten wie bei INF-Dateien haben wollen, so verwenden Sie am Textanfang den folgenden Punktbefehl: .snb .<> .sn .END .2 Kapitel Die mit HyperMake erzeugten HTML-Dateien und IBM INF-Dateien verfgen ber ein ęInhaltsverzeichnis. .IF IPFDOC Wenn man eine INF-Datei aufruft, erh„lt man zu Beginn ein Inhaltsverzeichnis, bei dem man wie in einem Verzeichnisbaum Kapitelberschriften auf- und zuklappen kann. Der Text, der unter jeder ęKapitelberschrift steht, erh„lt ein eigenes Fenster. .END .IF HTMLDOC Erzeugt HyperMake HTML-Dateien, dann erh„lt man unter dem Dateinamen INDEX.HTML ein Inhaltsverzeichnis. .END Es lassen sich ęKapitel und Unterkapitel wie in einer wissenschaftlichen Arbeit gliedern: .snA Hauptberschrift Erste Unterberschrift Zweite Unterberschrift Erste Unterunterberschrift Zweite Unterunterberschrift Dritte Unterberschrift .sn Im HyperMake Quelltext schreiben Sie Kapitelberschriften wie folgt: .snb .1 Erste Hauptberschrift .2 Erste Unterberschrift .2 Zweite Unterberschrift .3 Erste Unterunterberschrift .3 Zweite Unterunterberschrift .2 Dritte Unterberschrift .1 Zweite Hauptberschrift .sn Unter dem Punktbefehl, in dem sie die ęGliederungsebene angeben, schreiben Sie den Text der Kapitelberschrift. Der Text darf mehr als eine Zeile lang sein. Wenn Sie als Quelltextformat ASCIISOFTRET gew„hlt haben, mssen Sie zwei Returns (also eine Leerzeile) nach der Kapitelberschrift eingeben. In einem normalen, ausgedruckten Schriftstck wrde man stattdessen z. B. Dezimalklassifiation verwenden: 1. Erste Hauptberschrift 1.1 Erste Unterberschrift 1.2 Zweite Unterberschrift 1.2.1 Erste Unterunterberschrift 1.2.2 Zweite Unterunterberschrift 1.3 Dritte Unterberschrift 2. Zweite Hauptberschrift .IF IPFDOC Der Text hinter dem Gliederungsebenen-Punktbefehl ist auf etwa 200 Buchstaben begrenzt[Der IPFC Compiler wrde eine Fehlermeldung erzeugen.], aber man sieht im Fenstertitel nur etwa 70 bis 120 Buchstaben, abh„ngig von der Breite des Fensters auf dem Bildschirm. .END Zu Beginn des HyperMake-Quelltextes kann normaler Text erst nach der ersten Kapitelberschrift eingegeben werden.[Jede Kapitelberschrift steht fr ein Fenster. Ohne Fenster kann kein normaler Text dargestellt werden, der IPFC Compiler wrde Fehlermeldungen erzeugen.] Es drfen bis zu 6 Gliederungsebenen verwendet werden. .IF HTMLDOC Mit dem Schalter content level in der Ini-Datei k”nnen Sie angeben, wieviele Gliederungsebenen im Inhaltsverzeichnis erscheinen sollen. Die meisten HTML-Browser zeigen šberschriften hoher Ordnung (5. und 6. Ebene) mit einer kleineren Schrift als der Flieįtext. Das ist natrlich nicht akzeptabel. Wenn Sie HTML-Dateien mit 5. und 6. Gliederungsebene erstellen m”chten, sollten Sie den šberschriften der Ebenen 4 bis 6 oder zumindest 5 und 6 gr”įere Schriften zuweisen. ~.HS 123234~ oder etwa ~.HS 112233~ ordnet šberschriften einer bestimmten Ordnung eine andere Gr”įe der šberschrift zu. Standardwert ist ~.HS 123456~ .END .3 Querverweise zu Unterkapitel .in Querverweise zu Unterkapitel Wenn ein Kapitel Unterkapitel hat, werden automatisch Verweise zu Unterkapiteln und ein Verweis auf das n„chste Hauptkapitel generiert. In der Ini-Datei k”nnen mit ~text for link to...~ die Erkl„rungstexte "n„chstes Hauptkapitel" usw. ver„ndert werden. šblicherweise werden die šberschrifts-Texte der Unterkapitel einfach untereinandergeschrieben. Etwa in einer Homepage kann es sinnvoll sein, vertikal Platz zu sparen (Laut c't 3/97 sollen 90% aller Surfer keine Scrollbars benutzen) und stattdessen die Unterkapitel nebeneinander zu schreiben. Mit dem Punktbefehl ~.SC~ (Subchapter seperation characters) k”nnen Sie die Darstellung der automatischen Querverweise zu Unterkapiteln ver„ndern. Mit ~.sc trenntext~ wird dann die Zeichenfolge "trenntext" zwischen die einzelnen Unterkapitel-šberschriften geschrieben statt ein RETURN. Mit ~.sc RETURN~ wird wieder das normale RETURN-Zeichen als Trennung zwischen Unterkapitel-šberschriften verwendet. Hiermit k”nnen Sie auch Grafiken zwischen den šberschriften verwenden: .snb .btx blackdot .sc x .2 Erste Unterkapitelberschrift .sc RETURN .sn (x steht fr ein beliebiges unben”tigtes Sonderzeichen) Die Unterkapitel werden nebeneinander geschrieben, optisch getrennt durch BLACKDOT.GIF. .snb .sc RETURN RETURN .sc PARAGRAPH .sn sind zwei m”gliche Schreibweisen zur Einfgung einer Leerzeile. .snb .sc LIST .sn schreibt die Unterkapitel in der Listen-Schreibweise (unsortierte Liste). .3 Gleichzeitiges Anzeigen mehrerer Fenster .in Fensteranordnung .in Frames Mit nur einem einmalig zu verwendenden Punktbefehl sind Sie in der Lage, das Hypertext-Fenster in zwei oder drei Abschnitte zu teilen, so daį zwei oder drei Kapitel verschiedener Gliederungsebenen gleichzeitig angezeigt werden. .snL Gleichzeitiges Anzeigen zweier Gliederungsebenen .sn Wenn Sie den Punktbefehl Fensteranordnung .snb .FA verti 30 .sn vor einem normalen Gliederungsebenen-Punktbefehl schreiben, wird das Hauptfenster vertikal in ein linkes Fenster (30% der Bildschirmbreite) und ein rechtes Fenster (die verbleibenden 70%) unterteilt. Im linken Fenster erscheint das Fenster, dessen Kapitelberschrift nach dem FA Punktbefehl geschrieben wurde (im folgenden "Hauptkapitel" genannt); im rechten Fenster erscheint das Unterkapitel. Geben Sie bitte zwischen den Parametern des FA Punktbefehls ein Leerzeichen ein. Wenn Sie die Fensteranordnungs-Funktion verwenden, empfehle ich dringend, die automatischen Querverweise zu Unterkapitel nicht auszuschalten. .snb .FA hori 40 .sn unterteilt das Hypertext-Hauptfenster horizontal. Das Hauptkapitel erh„lt das obere Fenster (40% der Gesamth”he), das Unterkapitel das untere Fenster (die verbleibenden 60%). Sie drfen Prozentwerte von 10 bis 90 eingeben. Mit dem Kommandozeilenparameter ~/NOFRAMES~ wird dieser Punktbefehl unterdrckt. Fr ein Beispiel zur zweiteiligen Fensteranordnung siehe Verzeichnis aller Punktbefehle und Ini-Datei. .snL Gleichzeitiges Anzeigen dreier Gliederungsebenen .sn Diese Funktion steht bislang nur bei der Erstellung von IPF-Dateien zur Verfgung. .IF IPFDOC In gleicher Art und Weise k”nnen Sie auch drei Gliederungsebenen gleichzeitig anzeigen lassen. Dabei mssen Sie eine Angabe zu hori und zu verti machen: .snb .FA hori 40 verti 30 III .sn .sab Die erste hori/verti-Angabe unterteilt das Hauptfenster auf ganzer L„nge von links nach rechts bzw. von oben nach unten. Die zweite Angabe unterteilt einen der Teile wiederum in zwei Teile, so daį Sie drei Fenster erhalten: zwei kleinere und ein gr”įeres. Sie k”nnen w„hlen, welche Gliederungsebene das gr”įere Fenster bekommt, wobei Sie zwischen ~I~ und ~III~ einstellen k”nnen. So k”nnen Sie zwischen insgesamt vier Arten der Fensteranordnung w„hlen: .liXY verti hori hori verti ŚÄÄÄÄÄĀÄÄÄÄÄÄÄÄÄÄæ ŚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄæ ³ ³ II ³ ³ I ³ I ³ I ĆÄÄÄÄÄÄÄÄÄÄ“ ĆÄÄÄÄÄĀÄÄÄÄÄÄÄÄÄÄ“ ³ ³ III ³ ³ II ³ III ³ ³ ³ ³ ³ ³ ³ ĄÄÄÄÄÄĮÄÄÄÄÄÄÄÄÄÄŁ ĄÄÄÄÄÄĮÄÄÄÄÄÄÄÄÄÄŁ ŚÄÄÄÄÄĀÄÄÄÄÄÄÄÄÄÄæ ŚÄÄÄÄÄĀÄÄÄÄÄÄÄÄÄÄæ ³ I ³ ³ ³ I ³ II ³ ĆÄÄÄÄÄ“ ³ ĆÄÄÄÄÄĮÄÄÄÄÄÄÄÄÄÄ“ III ³ ³ III ³ ³ ³ ³ II ³ ³ ³ III ³ ³ ³ ³ ³ ³ ĄÄÄÄÄÄĮÄÄÄÄÄÄÄÄÄÄŁ ĄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄŁ .li ~I~ ist das Hauptkapitel, ~II~ das Unterkapitel, ~III~ das Unterunterkapitel. Der Punktbefehl Fensteranordnung gilt nur ber ein Hauptkapitel mit seinen Unter- und Unterunterkapiteln. Die Fensteranordnung arbeitet nur, wenn der Benutzer direkt das Hauptkapitel aufruft. Wenn ber einen Querverweis direkt ins Unterunterkapitel gesprungen wird (~III~), wird das Hauptfenster nicht entsprechend unterteilt. Bei einem Querverweis ins Unterkapitel (~II~) erscheint zwar auch die Ebene ~III~, jedoch bleibt der fr ~I~ reservierte Platz ungenutzt. Wenn Sie drei Gliederungsebenen gleichzeitig angezeigt haben wollen, aber nicht jedes Kapitel ber die dritte Gliederungsebene verfgt, sollte immer Ebene ~I~ das gr”įte Fenster erhalten, also ~I~ und nicht ~III~ im FA-Punktbefehl stehen. Dann nimmt das Kapitel der Ebene II den sonst fr III reservierten Platz mit ein. .4 Beispiel Fensteranordnung - Quelltext .snz .FA verti 50 hori 40 I .4 Beispiel Fensteranordnung - Ergebnis Das Hauptkapitel mit Querverweisen zu Unterkapiteln. .5 Erstes Unterkapitel Das erste Unterkapitel. 3-fach-Unterteilung fr HTML wird in HyperMake 3.0 noch nicht untersttzt. .6 Erstes Unterunterkapitel Das erste Unterunterkapitel vom ersten Unterkapitel. .6 Zweites Unterunterkapitel Das zweite Unterunterkapitel vom ersten Unterkapitel. .5 Zweites Unterkapitel Das zweite Unterkapitel. .6 Erstes Unterunterkapitel Das erste Unterunterkapitel vom zweiten Unterkapitel. .6 Zweites Unterunterkapitel Das zweite Unterunterkapitel vom zweiten Unterkapitel. .sn .FA verti 40 hori 50 I .4 Beispiel Fensteranordnung - Ergebnis .in Beispiel Fensteranordnung Das Hauptkapitel mit Querverweisen zu Unterkapiteln. .5 Erstes Unterkapitel Das erste Unterkapitel. 3-fach-Unterteilung fr HTML wird in HyperMake 3.0 noch nicht untersttzt. .6 Erstes Unterunterkapitel Das erste Unterunterkapitel vom ersten Unterkapitel. .6 Zweites Unterunterkapitel Das zweite Unterunterkapitel vom ersten Unterkapitel. .5 Zweites Unterkapitel Das zweite Unterkapitel. .6 Erstes Unterunterkapitel Das erste Unterunterkapitel vom zweiten Unterkapitel. .6 Zweites Unterunterkapitel Das zweite Unterunterkapitel vom zweiten Unterkapitel. .END IPFDOC .FA verti 75 .2 Schriften .in Schrift .in font .snL ę:Schrift Normal: .sn Mit dem Punktbefehl Schrift Normal .sab ~.SNX~ k”nnen Sie eine Schrift ausw„hlen, wobei ~X~ fr einen Schrift-Buchstaben (A bis Z und a bis z) steht; Groį- und Kleinbuchstaben werden unterschieden! Ein Schrift-Buchstabe steht fr eine bestimmte ž Schrifttyp (nur IPF) (Courier, Tms Rmn, Helv usw.) ž Size (Schriftgr”įe) ž Codepage (nur IPF) ž Phrase Element (nur HTML) ž Vordergrundfarbe ž Hintergrundfarbe (nur IPF). Sie k”nnen jedem der 2 x 26 Schrift-Buchstaben in der Ini-Datei verschiedene Schriften, Gr”įen und Farben zuordnen. Es gibt noch zwei andere Schrift-Einstellungen in der Ini-Datei: ~OmitLinks~ ist beschrieben in Querverweise, Unterdrcken von Querverweisen, ~LineStandard~ in Linienziehen. Um Schrift Normal auf den Standardwert (default) zu setzen, schreiben Sie einfach den Punktbefehl ohne weitere Parameter: ~.SN~ .IF HTMLDOC .snL ę:Phrase Element und Schriftart bei HTML: .sn Eine besondere Erl„uterung ben”tigen die Schriftarten und Phrase Elements von HTML. Bei "klassischem" HTML geben Sie nicht direkt die Schriftart "Courier", "Helvetica" usw. ein, denn das zugrundeliegende Konzept ist ein anderes - schlieįlich wird vielleicht der Text auf einem Rechner angeschaut, der gar keine "Courier" Schrift verwendet. Die Schrift soll der Benutzer einstellen k”nnen. Als Autor des HTML-Textes k”nnen Sie stattdessen mittels Phrase Elements den Zweck des Textes angeben: etwa CODE fr Programmcode (es wird Schrift in festen Schritten verwendet). Der Browser w„hlt dann eine passende Schrift dazu aus. Trotzdem k”nnen Sie aber Schriftarten definieren. Diese werden jedoch nicht von allen Browsern untersttzt und Sie k”nnen nicht sicher sein, ob eine bestimmte Schrift vom einem bestimmten Betriebssystem auch untersttzt wird. Damit die "Trefferwahrscheinlichkeit" m”glichst groį ist, mssen Sie mehrere Schriftarten angeben. Also etwa ~Arial,Helv,Helvetica,Univers~. HyperMake erfordert, daį Sie wenigstens zwei Schriftarten angeben, die nur durch ein Komma ohne Leerzeichen voneinander getrennt sind. Wenn Sie eine Schriftart eingeben wollen, die wie "Tms Rmn" ein Leerzeichen enth„lt, mssen Sie statt dem Leerzeichen einen Unterstrich _ eingeben. Ich pers”nlich m”chte Ihnen raten, von dieser M”glichkeit nicht Gebrauch zu machen, da Sie nicht mit Sicherheit wissen, ber welche F„higkeiten der Browser und das Betriebssystem verfgt. Auįerdem ist es eine gewisse Bevormundung des Benutzers, ihm seine "Lieblingsschrift" zu verwehren. Es gibt die folgenden Phrase Elements: PRE ADDRESS EM STRONG DFN CODE SAMP VAR CITE PRE spielt dabei eine Sonderrolle: Wenn eine Schrift mit Phrase Element PRE gew„hlt ist, bleiben die Zeilenumbrche aus dem Rohtext alle erhalten - die automatische Formatierung von Flieįtext ist dann ausgeschaltet. Die restlichen Phrase elements haben die folgende Bedeutung: ~EM~ Standard-Hervorhebung, meist kursiv dargestellt ~STRONG~ starke Hervorhebung, meist fett dargestellt ~DFN~ fr Definitionen ~CODE~ fr Programm-Quellcode ~SAMP~ fr Programm-Beispielsausgaben ~VAR~ fr Variablen oder Parameter von Befehlen ~CITE~ fr Zitate .END .snL Formatier-Attribute .sn Mit dem ~center~ Attribut in der Ini-Datei wird eine Schrift immer zentriert ausgegeben. Der Punktbefehl Output Centered l„įt sich so sparen. .IF IPFDOC Fr IPF l„įt sich mit dem Attribut ~PRE~ die automatische Formatierung abstellen, beispielsweise fr Quelltexte. Der entsprechende Punktbefehl Formatierung ist in diesem Fall nicht mehr n”tig. .END .snL ę:Schrift Alternativ: .sn .in Zeichen fr Schrift Alternativ Žhnlich ~.SN~ ist der Befehl ~.SA~ Schrift Alternativ zu verwenden. Die alternative Schrift wird mit Hilfe des Umschaltzeichens (Toggle) "Alternativ" gesetzt. Das Alternativ-Umschaltzeichen wird in der Ini-Datei gesetzt. So lassen sich Schrift und Farbe innerhalb des Flieįtextes umschalten: .saZ Das schaut ziemlich ~d~„~m~l~i~c~h~ aus. .sab .IF IPFDOC Der IPFC Compiler erlaubt nicht mehr als 14 Schriften in einer Datei. Ich empfehle, nicht mehr als 3 oder 4 verschiedene Schriften zu verwenden. Auįerdem m”chte ich Ihnen nahelegen, den Standardwert auch wirklich fr den berwiegenden Teil des normalen Flieįtextes zu verwenden. weil der Standardwert eine vernnftig lesbare Schrift auf jedem Bildschirm ist. .END Eine ausgew„hlte Schrift ist bis zum n„chsten Schrift-Punktbefehl aktiv, selbst ber Kapitel hinweg. Alternative Schriften sollten nur innerhalb eines Absatzes verwendet werden. Wenn Sie mehrere Abs„tze mit einer anderen Schrift schreiben wollen, verwenden Sie besser den ~.SN~-Befehl. .IF HTML .3 Phrase element Beispiele Phrase element Befehle werden von Browser zu Browser unterschiedlich dargestellt. .HTML
Beispielstext mit Phrase element ADDRESS

Beispielstext mit Phrase element PRE

Beispielstext mit Phrase element EM
Beispielstext mit Phrase element STRONG
Beispielstext mit Phrase element DFN
Beispielstext mit Phrase element CODE
Beispielstext mit Phrase element SAMP
Beispielstext mit Phrase element VAR
Beispielstext mit Phrase element CITE
.HYPERMAKE .END .3 Schrift-Beispiele .in Schrift-Beispiele .IF HTMLDOC HTML untersttzt nur Size (Schriftgr”įe), nicht direkt Font (Schrifttyp). .END .fm aus .snc Tms_Rmn 12 .snd Tms_Rmn 17 .sne Tms_Rmn 25 .snf Helv 12 .sng Helv 17 .snh Helv 25 .snb Courier 12 .snA Courier 15 .snk Courier 25 .sn .fm an .END IPFDOC .3 Farb-Beispiele .in Farb-Beispiele .IF IPF Farben bei IPF: Vordergrund .:color fc=default. default .:color fc=blue. blue .:color fc=cyan. cyan .:color fc=green. green .:color fc=neutral. neutral .:color fc=red. red .:color fc=yellow. yellow .:color fc=black. black .:color fc=default. Hintergrund DEFAULT .:COLOR BC=BLUE. BLUE .:COLOR BC=CYAN. CYAN .:COLOR BC=GREEN. GREEN .:COLOR BC=NEUTRAL. NEUTRAL .:COLOR BC=RED. RED .:COLOR BC=YELLOW. YELLOW .:COLOR BC=BLACK. BLACK .:color bc=default. .END IPF .IF HTML Farben bei HTML: .END .HTML
Black
Silver
Gray
White
Maroon
Red
Purple
Fuchsia
Green
Lime
Olive
Yellow
Navy
Blue
Teal

.HYPERMAKE Žltere Browser untersttzen noch keine Farben. .2 Unsortierte und sortierte Listen .in Auflistung .sv unsortierte Liste .sv unordered list Das folgende Beispiel ist eine unsortiere Liste: ž Schriftstil - Schrift (default, Tms_Rmn, Helv, Courier, System_VIO) - Schriftgr”įe ž Schriftfarbe - Vordergrundfarbe (default, blue, cyan, green, neutral, red, yellow, black) - Hintergrundfarbe (gleiche Farben wie bei Vordergrundfarben). Ver„ndern Sie einmal die Breite des Fensters und beobachten Sie die Textformatierung. Ein solches Ergebnis l„įt sich nicht mit normalen Zeichen erzielen. Die hier sichtbaren ęAuflistungszeichen k”nnen nicht beeinfluįt werden, da sie im IPFC Compiler bzw. im HTML-Browser festgelegt sind. Bei sortierten Listen wird „hnlich wie bei unsortierte Listen vorgegangen. Die HTML- und IPF-Funktion Definition List wird nicht untersttzt; sie k”nnen es aber mit Hilfe des Befehls automatischer Rand simulieren. .IF WORDSTARDOC .3 Eingabe mit DOS WordStar .sab WordStar verfgt ber "ę:weiche Leerzeichen;" ~°~. Sie k”nnen im WordStar mit ^OG erzeugt werden.[Weiche Leerzeichen werden im WordStar entweder als ~°~, oder einem mittigen Punkt oder einem anderen Sonderzeichen dargestellt. Wenn ein Absatz mit ^B neu formatiert wird, werden weiche Leerzeichen gel”scht. Mit Tab (^I) lassen sich keine weichen Leerzeichen erzeugen.] Es gibt keine bestimmten Auflistungszeichen fr die verschiedenen Auflistungsebenen wie bei der Eingabe mit einem ASCII Editor. Stattdessen mssen weiche Leerzeichen verwendet werden. .snb ž°Schriftstil °°-°°Schrift (default, Tms_Rmn, Helv, Courier, System_VIO) °°-°°Schriftgr”įe ž°Schriftfarbe °°-°°Vordergrundfarbe (default, blue, cyan, green, neutral, °°°°°red, yellow, black) °°-°°Hintergrundfarbe (gleiche Farben wie bei Vordergrundfarben). .sn Mit Ausnahme der ersten Auflistungsebene mssen sich alle Auflistungszeichen zwischen weichen Leerzeichen befinden; in der ersten Ebene muį dem Auflistungszeichen mindestens ein weiches Leerzeichen folgen. Wenn einmal die Position und das Zeichen des Auflistungszeichens einer Ebene gew„hlt worden ist, darf innerhalb der gleichen Liste dies nicht mehr ge„ndert werden. Beim folgenden Beispiel wrde HyperMake Fehlermeldungen erzeugen: .snb ž°Schriftstil °°-°°Schrift (default, Tms_Rmn, Helv, Courier, System_VIO) °°°-°Schriftgr”įe ą(falsche Position)ą ž°Schriftfarbe °°-°°Vordergrundfarbe (default, blue, cyan, green, neutral, °°°°°red, yellow, black) °°*°°Hintergrundfarbe ą(falsches Zeichen)ą .sn Nachdem Sie einen normalen Abstatz ohne Listen-Funktion geschrieben haben, drfen Sie fr die n„chste unsortierte Liste wieder andere Auflistungszeichen-Positionen und -Zeichen verwenden. .3 Eingabe mit einem ASCII-Editor .END WORDSTARDOC .in Auflistungen mit einem ASCII-Editor .in Zeichen fr Auflistungsebenen In der Ini-Datei k”nnen Sie Auflistungszeichen definieren. Auflistungszeichen stehen am Anfang einer Zeile. Angenommen, in der Ini-Datei sind folgende Auflistungszeichen festgelegt: * fr die erste und = fr die zweite Auflistungsebene. Um die unsortiere Liste von der letzten Seite zu erstellen, geben Sie ein: .snb * Schriftstil = Schrift (default, Tms_Rmn, Helv, Courier, System_VIO) = Schriftgr”įe * Schriftfarbe = Vordergrundfarbe (default, blue, cyan, green, neutral, red, yellow, black) = Hintergrundfarbe (gleiche Farben wie bei Vordergrundfarben). .sn Sie k”nnen auch noch Auflistungszeichen fr weitere Ebenen definieren. Brauchbare Zeichen sind das Quadrat Alt-254, der Graphik-Doppelstrich Alt-205 und -Einfachstrich Alt-196 und der normale Strich -. Es ist zul„ssig, zur eigenen šbersicht weitere Leerzeichen zu verwenden. Das gleiche Ergebnis wie oben erh„lt man deshalb mit der folgenden Eingabe: .snb * Schriftstil = Schrift (default, Tms_Rmn, Helv, Courier, System_VIO) = Schriftgr”įe .sn .3 Sortierte Listen .sv ordered list .sv sortierte Liste .sao Eine sortierte Liste z„hlt in der ersten Auflistungsebene mit 1., 2., 3., und in der zweiten Ebene mit a., b., c. Die dritte Ebene ist dann wieder numerisch usw. Dies l„įt sich nicht beeinflussen. Um eine sortierte Liste zu erstellen, geht man erst einmal genauso vor wie bei unsortierten Listen. ~Mit den Punktbefehlen sortierte Liste und unsortierte Liste~ .snb .SL .UL .sn l„įt sich zwischen sortierten und unsortierten Listen hin- und herschalten. Um einmalig eine sortierte Liste zu erhalten, wird diese mit dem SL und UL-Punktbefehl quasi eingeklammert. Die Voreinstellung ist ~unsortiere Liste.~ .2 Einbindung von Grafiken .in Zeichen fr Grafiken Um eine ęGrafik (ęBitmap) zentriert erscheinen zu lassen, verwenden Sie den Punktbefehl bitmap .snb .BM Dateiname .sn .IF IPFDOC Wenn der Dateiname ohne Erweiterung geschrieben wird, wird bei IPF automatisch ".BMP" angeh„ngt. IPFC untersttzt auįerdem OS/2-MET-Dateien. [Um von GIF nach BMP zu konvertieren, bietet sich das Freeware-Tool GIF2BMP an (Graham Welland, September 1989, OS/2 16 bit).] .END .IF HTMLDOC Bei der Erstellung von HTML-Dateien wird automatisch ".GIF" angeh„ngt, wenn der Grafikdateiname ohne Erweiterung angegeben wird. .END .sab Statt eines Dateinamens k”nnen Sie mit den Schlsselw”rtern ~LINKS~ ~RECHTS~ ~MITTE~ (MITTE nur IPF) die Grafik ausrichten. Standardwert ist ~LINKS~. Die Ausrichtung der Grafik gilt so lange, bis diese erneut ge„ndert wird. Um eine Grafik rechtsbndig zu bekommen, schreiben Sie also .snb .BM RECHTS .BM Dateiname .sn Mit einem zweiten Punktbefehl ę:bitmap text: lassen sich Grafiken in den Flieįtext integrieren: .snb .BTX Dateiname .sn .bt± box .in Grafikzeichen ~X~ steht stellvertretend fr ein Sonderzeichen, das sonst nicht im Text verwendet wird (sog. Grafikzeichen). Dieses Sonderzeichen wird ersetzt durch die Grafik "Dateiname". Beachten Sie, daį Grafiken ± h”her sind als Buchstaben, so daį sich ein gr”įerer Zeilenabstand ergibt, selbst wenn die Grafik so klein wie ein Buchstabe ist. Block-Zeichen wie Ū (Alt-219), Ü (Alt-220), ß (Alt-223) sind besonders geeignet (bei IBM codepage). Es ist zul„ssig, verschiedene Grafikzeichen gleichzeitig zu definieren. Um eine Grafikzeichen-Definition wieder aufzuheben, wird eingegeben: .snb .BTX .sn ohne Dateiname. .fa hori 35 .2 Querverweise und Index .in Querverweis .in Index .in Zeichen fr Index- und Querverweismarkierung .3 Automatische Erstellung von Querverweisen und Indexeintr„gen Die Erstellung von Querverweisen ist die m„chtigste Funktion von HyperMake. Wenn man eine HTML-Datei oder IPF-Datei direkt schreiben wrde, so mįte man jeden Querverweis selbst ziehen - wenn also z. B. ein 1 MB langer Hypertext ber Workgroup Computing geschrieben werden soll, und der Ausdruck "Workgroup Computing" tausend mal vorkommt, so mįte man selbst 1000 mal einen Querverweis programmieren... Letztlich wird dann auf sinnvolle Querverweise ganz verzichtet. Mit HyperMake mssen Sie lediglich einmal einen gewnschten Ausdruck (ein Wort oder mehrere W”rter) mit einem bestimmten Zeichen (dem Indexzeichen) markieren, und zwar an der Stelle, wo der Ausdruck erkl„rt wird bzw. wo es im Text um den Ausdruck geht (ę:Querverweis-Ziel:). Alle anderen Vorkommnisse des Ausdrucks im gesamten Hypertext erhalten automatisch einen Querverweis zu diesem Kapitel, wo der Ausdruck markiert wurde. Gleichzeitig wird der Ausdruck im Index (Stichwortverzeichnis) aufgenommen. .IF HTMLDOC .iv groįe Stichwortverzeichnis Fr HTML wird ein alphabetischer Index in einer eigenen Datei erzeugt. Dieses Stichwortverzeichnis gibt es in einer groįen und einer kleinen Ausgabe, abh„ngig von der Anzahl der Eintr„ge. Das groįe Stichwortverzeichnis verfgt ber Querverweise zu den Anfangsbuchstaben A bis Z. Ab wann das groįe und bis wann das kleine Stichwortverzeichnis angelegt werden soll, kann in der Ini-Datei unter extended index angegeben werden. .END .3 Markieren eines einzelnen Wortes, Žndern des Indexzeichens .in Indexzeichen .snL Markieren eines einzelnen Wortes .sn Um ein einzelnes Wort fr die Querverweis- und Index-Erstellung zu markieren, wird das Indexzeichen vorangestellt: .snb Eine #Workgroup ist eine Gruppe von Personen, die... .sn Achtung: verwenden Sie Indexzeichen nicht in Kapitelberschriften, benutzen Sie hierfr die Duplizierung von Kapitelberschriften. .snL Žndern des Indexzeichens .sn Mit dem Punktbefehl Indexzeichen .snb .IZ@ .sn .sab wird die aktuelle Einstellung fr das Indexzeichen aus der Ini-Datei, z. B. ~#~, in ~@~ ge„ndert. .3 Markieren eines Ausdrucks Wenn Sie ein Wort mit dem Indexzeichen markieren, wird nur das eine Wort gekennzeichnet. Ein Wort endet mit dem ersten Zeichen, das kein Buchstabe ist. (Zeichen, die als Buchstaben behandelt werden sollen, k”nnen in der Ini-Datei unter extended letters definiert werden.) Um einen Ausdruck mehrerer W”rter zu markieren, werden zus„tzlich zum Indexzeichen Doppelpunkte wie Klammern verwendet: .snb Heutzutage ist die #:Sicherheit von Computern: fast schon... ... Trotzdem kann die #:Sicherheit von Groįrechnern: nicht als... ... Dafr hat die #:Benutzerfreundlichkeit von Computern; doch... .sn Im Index wird folgendes erscheinen: .snC Sicherheit von Computern von Groįrechnern Computern, Benutzerfreundlichkeit von .sn Achten Sie auf den feinen Unterschied zwischen dem ersten/zweiten und dem dritten Beispiel: Die Eingabe von "#:XXXXą:ą" verwendet das erste Wort des Ausdrucks als das ę:fhrende Wort:, ein "#:XXXXą;ą" das letzte Wort. Das fhrende Wort wird im Index zuerst genannt und bestimmt somit die alphabetische Reihenfolge im Index. Die Wahl des fhrenden Wortes hat keine Auswirkung auf Querverweise. Wenn ein fhrendes Wort im Index nur einmal vorkommt wie .snC Computern Benutzerfreundlichkeit von .sn schreibt HyperMake im Index .snC Computern, Benutzerfreundlichkeit von .sn Ihnen wird schon aufgefallen sein, daį die Endung "Computern" nicht sehr sch”n ausschaut. Solche unsch”nen Endungen drfen Sie ausklammern: .snb Dafr hat die #:Benutzerfreundlichkeit von Computer;n doch... ... hat gezeigt, daį bei #:Computer:n .sn .3 Markieren eines Ausdruckes auįerhalb des Flieįtextes Mit dem Punktbefehl INdex .snb .IN Ausdruck .sn k”nnen Sie ein Wort oder einen Ausdruck mehrerer W”rter im Index ablegen und Querverweise von gleichlautenden Ausdrcken anderer Textstellen zu dieser Stelle hin erzeugen. Das hat den Vorteil, daį der Indexeintrag bzw. das Querverweis-Ziel nicht wortw”rtlich im Flieįtext vorkommen muį. Manchmal kann die Verwendung eines Punktbefehls statt dem Indexzeichen mit Doppelpunkt-Klammern auch bersichtlicher sein. .in Index vertauscht Normalerweise ist das erste Wort des Ausdrucks das fhrende Wort. Wenn dagegen das letzte Wort das fhrende Wort sein soll wie bei der Verwendung der Doppelpunkt-Strichpunkt-Klammerung, verwenden Sie den Punktbefehl Index Vertauscht. .snb .IV Benutzerfreundlichkeit von Computer .sn Wenn der Ausdruck in den Punktbefehlen IN und IV mit einem Leerzeichen endet, wird der Ausdruck zwar in den Index aufgenommen, Querverweise werden aber nicht gezogen. Sie k”nnen sich dies ggf. zunutze machen. .3 Querverweise bei leicht abweichenden W”rtern .snL ę:Verfahrensweise bei Wortendungen; .sn Was macht HyperMake, wenn das Wort "Maschineąną" gefunden wird und an anderer Stelle das Wort "Maschine" ohne "n" markiert ist? Er zieht den Querverweis trotzdem, weil die Endung "n" in der Ini-Datei unter "endings of words" eingetragen ist (bzw. sein sollte). Dieser Eintrag ist sprachspezifisch. Wenn umgekehrt "Maschineąną" markiert wurde, so wird bei "Maschine" kein Querverweis gezogen. Markieren Sie deshalb die W”rter in schlichter Form (Singular, 1. Fall). Um bei W”rtern, die mit Vokalen[Buchstaben a e i o u y] enden wie "Konto" "Konten" trotzdem die Gleichheit zu finden, krzt HyperMake vor dem Vergleich die W”rter erst einmal um den letzten Buchstaben, wenn er ein Vokal ist. .snL Groį- und Kleinschreibung .sn Querverweise werden unabh„ngig von der Groį- bzw. Kleinschreibung des Anfangsbuchstabens gezogen. Wenn dagegen weitere Buchstaben in ihrer Groį- bzw. Kleinschreibung abweichen, wird der Querverweis nicht erstellt. Beispiel: .sab ~.IN Wort~ .sn Querverweise werden erstellt nach ~Wort~, ~wort~, aber nicht nach ~WORT~. .3 Mehrmalige Markierung eines Wortes HyperMake geht davon aus, daį Sie in einem Hypertext jedes Wort/jeden Ausdruck nur einmal markieren. Wenn er mehrmals markiert ist, erscheint er mehrmals im Index direkt untereinander und Querverweise werden an die erste markierte Stelle hin gezogen. .3 Unterdrcken von Querverweisen .in omitting links .in Unterdrcken von Querverweisen Querverweise werden natrlich nicht gezogen, wenn sie auf das selbe Fenster (Kapitel) zeigen wrden. Querverweise werden auįerdem nicht gezogen, wenn der Ausdruck mehrmals im gleichen Absatz vorkommt. Also beispielsweise Punktbefehl Punktbefehl Punktbefehl - nur das erste Vorkommen von "Punktbefehl" im Absatz erh„lt den Querverweis. Wenn Sie lieber mehrfache Querverweise vom gleichen Ausdruck nicht nur in einem Absatz, sondern gleich im gesamten Fenster (Kapitel) unterdrcken wollen, mssen Sie in der Ini-Datei den Schalter "no more links in" von PARAGRAPH in WINDOW „ndern. Es kann hin und wieder ntzlich sein, bei bestimmten Schriften - etwa Beispielstext - Querverweise grunds„tzlich zu unterdrcken. Das erreichen Sie in der Ini-Datei mit dem Schalter Font, Parameter ~OmitLinks~. Natrlich ist es erlaubt, eine andere Schrift mit gleichen Einstellungen auįer dem OmitLinks-Parameter zu definieren. Mit diesem Trick k”nnen Sie Querverweise unterdrcken, ohne wirklich die Schrift zu wechseln. .IF IPFDOC .3 Externe Querverweise bei IPF (external links) ę:Externe Querverweise: sind Querverweise, die zu einem Kapitel eines anderen INF- oder HLP-Dokuments hin zeigen. Um solche externen Querverweise (external links) zu erzeugen, sind ž die Ini-Datei ž die Datei, zu deren Kapitel hin gesprungen werden soll (Sprungziel-Datei) ž die Datei, aus der heraus gesprungen werden soll (Sprungstart-Datei) zu editieren. Externe Querverweise nutzen die HyperMake Funktion der Erstellung von Panel ID's. Das Kapitel ber Panel ID's mssen Sie aber nicht extra lesen. .snL 1. Ini-Datei .sn In der Ini-Datei muį unter "Panel ID filename =" eine Bezeichnung beginnend mit *. eingetragen werden, also etwa .snb Panel ID filename = *.PAN .sn Der Dateiname der Quelldatei mit der Erweiterung PAN wird so zur Panel ID Datei, die HyperMake beim Kompilieren der Sprungziel-Datei automatisch erstellt. Diese Panel ID Datei verwendet HyperMake dann wiederum beim Kompilieren der Sprungstart-Datei. .snL 2. Sprungziel-Datei .sn Beim Indizieren der šberschriften numeriert HyperMake die Kapitelberschriften von eins fortlaufend durch. Da es unpraktisch w„re, sich eine Nummer wie 237 zu merken und sich die Nummer eines bestimmten Kapitels schlieįlich „ndert, wenn davor ein neues Kapitel eingeschoben wird, werden diese ID's (Identifikationsnummern) der Kapitelberschriften durch verst„ndlichere Bezeichnungen wie Kapitel_Einleitung ersetzt. Mit dem Befehl .snb .ID Kapitel_Einleitung .sn in der Sprungziel-Datei erh„lt das Kapitel, wo der Punktbefehl steht, die Kurzbezeichnung "Kapitel_Einleitung", vgl. Datei BEISPIEL. Alle durch den ID-Punktbefehl deklarierten Kurzbezeichnungen speichert HyperMake in der Datei Quelldateiname.PAN oder einer anderen Erweiterung, je nach Eintrag in der Ini-Datei, ab. Auf diese Datei greift HyperMake dann zu, wenn die Sprungstart-Datei kompiliert wird. .snL 3. Sprungstart-Datei .sn In der Datei, aus der gesprungen werden soll, wird der ID-Punktbefehl aus der Sprungziel-Datei wiederholt und darunter werden die gewohnten IN- und IV- (Index vertauscht) Punktbefehle gesetzt. Das ganze wird zwischen zwei neue EX-Punktbefehle plaziert. .snb .EX Dateiname.inf .ID Kapitel_Einleitung .IN Ausdruck .EX .sn Hinter dem EXtern-Punktbefehl wird ein Dateiname angegeben, wobei sowohl die Erweiterung INF als auch HLP m”glich ist. Alle folgenden ID, IN und IV-Befehle beziehen sich jetzt auf die externe Datei, bis .EX mit einem anderen Dateinamen oder ganz ohne Parameter dahinter geschrieben wird. Zwischen den beiden EX-Befehlen sollte kein Flieįtext stehen. Alle in der Sprungstart-Datei gefundenen Ausdrcke "Ausdruck" erhalten einen externen Querverweis zu dem Kapitel der Datei Dateiname.inf, das mit dem ID Punktbefehl ".ID Kapitel_Einleitung" gekennzeichnet ist. Wo der .EX - .EX -Block in der Sprungstart-Datei steht, spielt berhaupt keine Rolle. Pascal-Programmierer aufgepaįt! Bei der Kurzbezeichnung hinter dem ID-Befehl wird Groį- und Kleinschreibung unterschieden! Beachten Sie die Aktualit„t der IPF-Dateien im Auge: bei einer Žnderung der Sprungziel-Datei muį HyperMake erst die Sprungziel-Datei bearbeiten, so daį die Panel ID Datei den aktuellen Stand erh„lt. Erst dann kann die Sprungstart-Datei kompiliert werden. Bei der Angabe des Dateinamens .snb .EX Dateiname.inf .sn noch Pfade anzugeben, macht meist keinen Sinn, da sich die Datei bei verschiedenen Computern auf verschiedenen Pfaden und Laufwerken befinden kann. Wenn die Datei sich im gerade angemeldeten Pfad befindet, gibt es keine Probleme, auch nicht, wenn der Pfad bei SET BOOKSHELF der Datei CONFIG.SYS enthalten ist. Ist das jeweils nicht der Fall, sollten Sie Umgebungsvariablen verwenden. Als Beispiel fr externe Querverweise k”nnen Sie Beispiel Externe Querverweise ausprobieren oder gleich hier auf die Worte Kanzler, SPD und CDU drcken. Beim Erstellen dieses Hypertextes (also der Sprungstart-Datei) habe ich an einer beliebigen Stelle den folgenden Befehlsblock geschrieben: .snb .EX Beispiel.inf .ID Kapitel_Kanzler .IN Kanzler .ID Kapitel_Parteien .IN SPD .IN CDU .EX .sn .EX Beispiel.inf .ID Kapitel_Kanzler .IN Kanzler .ID Kapitel_Parteien .IN SPD .IN CDU .EX In der Sprungziel Datei BEISPIEL finden sich in den Kapiteln ber Kanzler und Parteien die zwei ID-Punktbefehle ebenfalls. .END IPFDOC .IF HTMLDOC .3 Externe Querverweise bei HTML (external links) Mit HyperMake k”nnen Sie bestimmte W”rter definieren, die grunds„tzlich zu einer bestimmten ęURL, also einer beliebigen Adresse im Internet, zeigen sollen. Wenn etwa alle W”rter "Netscape" und "Netscape-Browser" auf die Netscape-Seite im Internet zeigen sollen, dann geben Sie dies wie folgt ein: .snb .URL http://home.netscape.com .IN Netscape .IN Netscape-Browser .LOCAL .sn .URL http://home.netscape.com .IN Netscape .IN Netscape-Browser .LOCAL Achten Sie darauf, daį die gewohnten IN-Befehle zwischen einem URL-Befehl und einem LOCAL-Befehl quasi eingeklammert werden: Bevor normaler Text folgt, muį also ein LOCAL-Befehl geschrieben werden. Es ist sinnvoll, z. B. am Anfang des Textes s„mtliche externe Links zu konzentrieren. .END HTMLDOC .IF IPFDOC .3 Programme per Querverweis starten (launching programs, nur IPF) .in Programme starten .in Starten von Programmen .in launching programs Žhnlich wie externe Querverweise kann auf externe Programme verwiesen werden, k”nnen also externe Programme gestartet werden. .snb .EX mppm.exe c:\mmos2\movies\macaw.avi .IN Papagei .EX e.exe BEISPIEL.TXT .IN Datei BEISPIEL .EX .sn .EX mppm.exe c:\mmos2\movies\macaw.avi .IN Papagei .EX e.exe BEISPIEL.TXT .IN Datei BEISPIEL .EX .sao Der Papagei ist ein Vogel. (Der Querverweis "Papagei" ist nur dann aktiv, wenn Sie OS/2 Multimedia installiert haben.) Der Querverweis zur Datei BEISPIEL, bei dem der Systemeditor gestartet wird, ist Ihnen vielleicht schon im vorangegangenen ~Kapitel~ aufgefallen. Drckt der Benutzer auf "Papagei" oder "Datei BEISPIEL", wird das entsprechende externe Programm gestartet. Im EX-Punktbefehl sind die Parameter hinter dem Programmnamen optional. Programmname und Parameter sind durch ein Leerzeichen getrennt. Die Erweiterung ~.EXE~ muį angegeben werden! Es k”nnen natrlich auch Batchdateien mit der Endung ~.CMD~ oder DOS-Dateien mit der Endung ~.BAT~ oder ~.COM~ gestartet werden. Wenn Daten nicht bei jedem Benutzer in einem bestimmten Pfad, z. B. C:\MMOS2\MOVIES, zu finden sind, mssen Umgebungsvariablen verwendet werden. Sie k”nnen einem EX-Punktbefehl auch mehrere IN-Punktbefehle folgen lassen, etwa um sowohl bei "Papagei" als auch bei "Papageienfilm" den Film starten zu lassen. Damit eine Bezeichnung wie "CONFIG.SYS" oder "Eule (Film)" einen Querverweis bekommt, mssen Punkt bzw. Klammern in der Ini-Datei unter extended letters aufgefhrt sein. .4 Umgebungsvariablen .in Umgebungsvariable Bei externen Querverweisen und beim Starten von Programmen k”nnen Umgebungsvariablen sehr ratsam sein. Beim Verwenden einer INF-Datei auf verschiedenen Rechnern sollten bestimmte Datenpfade durch Umgebungsvariablen ersetzt werden, etwa %MMVIDEO%. Jeder Rechner, der Ihren Hypertext benutzt, sollte dann in der Datei CONFIG.SYS z. B. folgenden Eintrag haben: .snb SET MMVIDEO=C:\MMOS2\MOVIES .sn Im HyperMake-Quelltext schreiben Sie dann: .snb .EX mppm.exe %MMVIDEO%\macaw.avi .IN Papagei .EX .sn OS/2 ersetzt dann den Ausdruck %MMVIDEO% gegen den in der CONFIG.SYS angegebenen Laufwerks- und Pfadnamen. Genauso k”nnen Sie bei externen Querverweisen verfahren. In den F„llen, wo die Pfadbezeichnung mit einem Strichpunkt endet, etwa .snb SET MMBASE=C:\MMOS2; .sn funktioniert allerdings die Umgebungsvariable nicht mehr und der Querverweis wird nicht gezogen. .EX view.exe cmdref.inf .IN OS/2-Referenzhandbuch .EX Zum Thema Umgebungsvariablen k”nnen Sie auch unter "SET" im OS/2-Referenzhandbuch nachschlagen. .END IPFDOC .2 Duplizierung von Kapitelberschriften .in Duplizierung von Kapitelberschriften Es ist h„ufig erforderlich, die Kapitelberschrift als Querverweis-Ziel zu deklarieren, in den Index aufzunehmen und - insbesondere bei IPF relevant - im Textfenster mit gr”įerer oder farbiger Schrift zu wiederholen: .snb .3 Kapitelberschrift .IN Kapitelberschrift .snX Kapitelberschrift .sn .sn Diese Tipparbeit kann man sich sparen. Mit dem Punktbefehl DuPliziere .snb .dpX .sn wird die Kapitelberschrift zu Beginn des Flieįtextes in Schrift C dupliziert, d.h. wiederholt, und zwar in allen Gliederungsebenen. .IF IPFDOC Besonders vorteilhaft ist dies bei sehr langen šberschriftstexten, da bei INF-Dateien in der Fensterleiste meist nur die ersten 70 Buchstaben Platz finden. .END Mit Hilfe der Einstellung Index Filter in der Ini-Datei k”nnen bestimmte Zeichen im Stichwortverzeichnis und bei der Duplizierung von Kapitelberschriften unterdrckt werden. .snb .dp34X .sn fhrt die Duplizierung nur fr Gliederungshierarchie 3 und 4 aus. .snb .dp- .sn deaktiviert die Duplizierungs-Funktion ber alle Gliederungsebenen. .snb .dp-234 .sn deaktiviert die Duplizierungs-Funktion in den Gliederungsebenen 2, 3 und 4. .snb .dp# .sn verwendet den šberschrifts-Text als Querverweis-Ziel; die Wiederholung des Kapitelberschrifts-Textes im .IN -Punktbefehl kann man so sparen. Statt # l„įt sich auch das Stichwortzeichen aus der Ini-Datei verwenden. .snb .dp## .sn nimmt den šberschrifts-Text nicht nur als Querverweis-Ziel, sondern zus„tzlich noch im Index auf. Diese Funktion sollte nur mit Bedacht gew„hlt werden, da die Information sowohl im Index als auch im Inhaltsverzeichnis auftaucht, also redundant ist. .IF IPFDOC šbrigens kann ein groįer Index eine INF-Datei bei der Benutzung des Index sehr langsam machen. .END .snb .dp3##X, .3 Meier, Fritz .sn im Flieįtext wird "Fritz Meier" dupliziert, das ist auch das Querverweis-Ziel. Im Index, im Inhaltsverzeichnis und als Fenster-šberschrift erscheint aber "Meier, Fritz". Die Parameter hinter ".DP" k”nnen beliebig kombiniert werden, wobei die Reihenfolge egal ist. .3 Beispiel Duplizierung Kapitelberschriften - Quelltext .snz .fa verti 30 .dp4R#, .3 Beispiel Duplizierung Kapitelberschriften - Ergebnis Bundeskanzler seit 1949 (CDU, SPD und Kanzler sind externe Querverweise. Schrift R ist in Ini-Datei definiert.) .4 Adenauer, Konrad 1949-1963, CDU, war der erste Kanzler nach dem zweiten Weltkrieg. Ihm folgte Ludwig Erhard. .4 Erhard, Ludwig 1963-1966, CDU, Nachfolger von Konrad Adenauer. Zweiter Kanzler der Bundesrepublik. Ihm folgte Kurt Georg Kiesinger. .4 Kiesinger, Kurt Georg 1966-1969, dritter Kanzler der CDU, leitete die groįe Koalition von CDU und SPD. Nachfolger von Ludwig Erhard. .4 Brandt, Willy 1969-1974, erster Kanzler der SPD. .4 Schmidt, Helmut 1974-1982, Kanzler der SPD aus den Siebzigern. Nachfolger von Willy Brandt. .4 Kohl, Helmut amtierender Kanzler der CDU seit 1982. Nachfolger von Helmut Schmidt. .sn .fa verti 30 .3 Beispiel Duplizierung Kapitelberschriften - Ergebnis .in Beispiel Duplizierung von Kapitelberschriften .in Beispiel Externe Querverweise .dp4R#, Bundeskanzler seit 1949 (CDU, SPD und Kanzler sind externe Querverweise. Schrift R ist in Ini-Datei definiert.) .4 Adenauer, Konrad 1949-1963, CDU, war der erste Kanzler nach dem zweiten Weltkrieg. Ihm folgte Ludwig Erhard. .4 Erhard, Ludwig 1963-1966, CDU, Nachfolger von Konrad Adenauer. Zweiter Kanzler der Bundesrepublik. Ihm folgte Kurt Georg Kiesinger. .4 Kiesinger, Kurt Georg 1963-1966, dritter Kanzler der CDU, leitete die groįe Koalition von CDU und SPD. Nachfolger von Ludwig Erhard. .4 Brandt, Willy 1969-1974, erster Kanzler der SPD. .4 Schmidt, Helmut 1974-1982, Kanzler der SPD aus den Siebzigern. Nachfolger von Willy Brandt. .4 Kohl, Helmut amtierender Kanzler der CDU seit 1982. Nachfolger von Helmut Schmidt. .2 Tabellen (Tables) .in Tabelle .in Table HyperMake 3.0 erm”glicht die einfache Eingabe von Tabellen in der Form, wie sie als ASCII-Text mit festen Schritten dargestellt wird: .snb .TA Beispiel erste Zelle Zahlen -----dritte und vierte---- erste Zelle 97,96 dritte Zelle vierte Zelle+ erste Zelle 1.324,90 dritte Zelle zweite Zeile erste Zelle 0,00 dritte Zelle Binde- erste Zelle -123,45 " strich .TA .sn .TA Beispiel erste Zelle Zahlen -----dritte und vierte---- erste Zelle 97,96 dritte Zelle vierte Zelle+ erste Zelle 1.324,90 dritte Zelle zweite Zeile erste Zelle 0,00 dritte Zelle Binde- erste Zelle -123,45 " strich .TA .IF IPFDOC Die F„higkeiten von IPF-Tabellen sind lange nicht so groį wie bei HTML. Fr IPF-Tabellen benutzen Sie besser keine " und + Zeichen. HyperMake versucht zwar das beste daraus zu machen, doch ist das Ergebnis oft wenig befriedigend. IPFC erzeugt brigens Tabellen grunds„tzlich nur mit fester Schrift. .END .sab Eine Tabelle (Table) beginnt mit einem ~.TA~ Punkbefehl, gefolgt von einem Titel. Soll die Tabelle keinen Titel erhalten, muį ~.TA NO~ geschrieben werden. ~.TA~ gefolgt von einem Return, also ohne weitere Angaben, beendet die Tabelle. Tables k”nnen weitestgehend so eingegeben werden, wie man sie in einem Editor mit mit festem Zeichenabstand darstellt. Es gelten folgende Regeln: ž Zwischen zwei Zellen mssen zwei Leerzeichen sein. Dies ist das Kriterium fr die Trennung zwischen den Zellen. Die zwei Leerzeichen mssen nicht immer untereinanderstehen, zumindest eine Spalte sollte aber schon ber alle gewnschten Zeilen nur Leerzeichen enthalten. Linksbndigkeit bzw. Rechtsbndigkeit spielt keine Rolle. ž Soll eine Zelle ber zwei Zellen-Zeilen gehen, so wird sie nach unten mit einem G„nsefįchen verl„ngert. ž Soll eine Zelle gr”įer sein als deren Textinhalt, so darf der Text am Anfang und Ende mit Bindestrichen aufgefllt werden. Diese werden wieder gel”scht, wenn sie nicht einzeln vorkommen wie beim Beispiel -123,45. ž mehrere Zeilen k”nnen zu einer Zelle zusammengefaįt werden: Entweder mit einem Plus-Zeichen am Ende der Zeile, dieses wird nicht dargestellt; oder ein einzelner Bindestrich. Falls das + Zeichen schon anderweitig verwendet wird, kann jederzeit mit dem Befehl ~.tc X~ (table character) stattdessen ein beliebiger Buchstabe X eingestellt werden. Standardm„įig werden Zellen, die berwiegend Ziffern enthalten, rechtsbndig geschrieben und Zellen, die berwiegend Buchstaben enthalten, linksbndig. Mit dem Punktbefehl ~.TT~ (Table Tags) k”nnen HTML Table Tags ver„ndert werden. Standard ist ~.TT BORDER CELLPADDING=5~ ~.TT BORDER CELLPADDING=5 BGCOLOR="#D0D0D0"~ verwendet fr die Tables einen grauen, einfarbigen Hintergrund. Das kann vonn”ten sein, wenn Sie ein Hintergrundbild verwenden (siehe Ini-Datei, Schalter body tags), in dem Linien enthalten sind. Das kann dann in Kombination mit den Table-Linien unbersichtlich aussehen. .2 Linienziehen .in Zeichen fr Linienziehen Da das ęLinienziehen zur Erstellung von Umrandungen und Tabellen normalerweise eine recht aufwendige Angelegenheit ist, gibt es einen Punktbefehl, der Ihnen die Arbeit sehr erleichtert, wie Sie im folgenden Beispiel sehen werden: .snb .LIXY X X Operating systems Y Y X X Novell IBM Hardware Y Y X X DOS Netware OS/2 X X .LI .sn Und Sie erhalten: .snb .LIXY X X Operating systems Y Y X X Novell IBM Hardware Y Y X X DOS Netware OS/2 X X .LI .sn .sab Innerhalb des Punktbefehls ~.LIXYZ~ steht X fr das Zeichen, welches die Ecken eines Rechtecks markiert und Y fr den Beginn einer Unterteilung. Ein vorangestelltes Zeichen Z ergibt Doppelstriche (nur IPF). Verwenden Sie fr X, Y und Z Zeichen, die sie sonst in der Liniengraphik nicht ben”tigen. Die standardm„įig eingestellte Schrift fr Linienziehen k”nnen Sie in der Ini-Datei bei den Schriften (Font) verstellen, und zwar mit dem Parameter ~LineStandard~. .IF IPFDOC Kombinierte Einfach/Doppel-Striche werden nur mit Codepage 437 untersttzt. Falls Sie andere Codepages verwenden mssen, verwenden Sie bitte keine Doppelstriche. .END .IF WORDSTARDOC .3 Linienziehen und WordStar Das Zeichen Z im ~.LIXYZ~-Befehl zur Erstellung von Doppelstrichen muį ein ^P-Steuerzeichen sein (z. B. ^PE oder ^PR). Verwenden Sie den ^OD-Umschalter, um die ^P-Steuerzeichen unsichtbar zu machen; so k”nnen Sie die korrekte Ausrichtung des Rechtecks berprfen. .END .2 Fuįnoten .in Fuįnote Die Erstellung von Fuįnoten geht mit HyperMake sehr leicht. Fuįnoten drfen etwa in Klammern geschrieben werden wie {Inhalt der Fuįnote}, nachdem Sie den Punktbefehl FUįnoten verwendet haben: ~.FU{}~ Statt den Klammern und dem Fuįnoteninhalt erscheint nur ein Sternchen[Inhalt der Fuįnote], auf das Sie mit der Maus drcken k”nnen. .fu{} Andere brauchbare Fuįnotenzeichen sind [ ], < > oder Ü (Alt-220) ß (Alt-223) - sozusagen fette G„nsefįchen (bei IBM codepage). .fu[] .IF HTMLDOC Sie k”nnen fr das HTML-Fuįnotenfenster eine andere Schrift w„hlen: ~.FU{}snX~ Fr das HTML-Fuįnotenfenster wird dann Schrift X verwendet. Mit dem Befehl Fuįnoten Size ~.FS 30~ k”nnen Sie die Gr”įe des Fuįnotenfensters in Prozent verstellen. Standard ist 15 Prozent. Dieser Befehl muį vor einem neuen Kapitel, das die ge„nderte Fensteraufteilung haben soll, aktiviert werden. .END Die Fuįnotenfunktion kann zwischendurch auch wieder ausgeschaltet werden, indem keine Parameter dahinter geschrieben werden: ~.FU~ oder Sie k”nnen zwischendurch auch andere Fuįnotenzeichen definieren. Standardm„įig sind gar keine Fuįnotenzeichen definiert. Wenn Sie statt einem "*" als Knopf zur Aktivierung des Fuįnotenfensters einen anderen Text haben wollen, k”nnen Sie dies mit dem Punktbefehl Fuįnoten Text „ndern: ~.FT XXX~ Statt einem Sternchen erscheint dann der Text "XXX". Sie drfen dabei auch eine Grafik statt Text verwenden: .snb .BT& Dateiname .FT& .sn (siehe Grafiken) .IF HTMLDOC Wenn Sie bei HTML Fuįnoten nicht als Frames dargestellt haben m”chten, sondern als separate Datei, k”nnen Sie dies mit dem Kommandozeilenparameter ~/NOFRAMES~ erreichen. .END .FA hori 30 .2 R„nder und Formatierung .in Rand .in margin .3 Linken Rand verstellen Das ist ein Beispielstext mit linkem Rand 1. .LM10 Dies ist ein Beispielstext mit linkem Rand 10; beachten Sie, daį die Einrckung auch in den folgenden Zeilen korrekt ist. .LM20 Dies ist ein Beispielstext mit linkem Rand 20; beachten Sie, daį die Einrckung auch in den folgenden Zeilen korrekt ist. .LM1 Der linke Rand l„įt sich mit dem Punktbefehl Left Margin (linker Rand) verstellen: ~.LM n~ n steht fr eine Zahl von 1 bis ca. 30; der Standardwert ist 1. Wenn ~.LM~ ohne Zahl eingegeben wird, wird auf den Standardwert 1 geschaltet. .IF HTMLDOC HTML ist nicht in der Lage, den linken Rand in feinen Schritten zu ver„ndern. HyperMake simuliert die Verstellung des linken Randes unter Verwendung der HTML definition list. Das hat zur Folge, daį der Rand nur in Fnferschritten ge„ndert werdn kann. Left Margin 1 und 2 hat gar keine Wirkung, 4 bis 8 stellt ihn auf ca. 5 (abh„ngig vom Browser), 9 bis 13 auf 10 usw. .END .IF WORDSTARDOC Beim DOS WordStar mssen weiche Leerzeichen statt dem Punktbefehl verwendet werden.[Der WordStar-Punktbefehl .LM generiert solche weichen Leerzeichen automatisch. HyperMake interpretiert nicht den LM-Befehl selbst, sondern nur die darber erzeugten weichen Leerzeichen. Genauso k”nnen Sie weiche Leerzeichen durch Tabulatoren (^OL) und der Absatzeinrckung (^OG) generieren; beim nachtr„glichen Formatieren werden weiche Leerzeichen mit ^OG ^B erzeugt.] .END .3 Formatierung aus- und einschalten .IF IPFDOC .in Formatierung Bei Erstellung von IPF-Dateien l„įt sich mit den Punktbefehlen Formatierung aus und Formatierung an .snb .FM aus .sn .snb .FM an .sn der automatische Zeilenumbruch aus- und wieder einschalten. Standardm„įig ist die Formatierung eingeschaltet. Aus bedeutet, daį die Formatierung (Zeilenvorschbe) so bleiben wie im Quelltext. Die Einstellung gilt bis zum n„chsten Formatierungs-Befehl, selbst ber Kapitelberschriften hinweg. Beim Linienziehen ist die Formatierung automatisch ausgeschaltet. Verwenden Sie nicht Index/Querverweise, wenn Formatierung ausgeschaltet ist.[Und zwar wegen einem Fehler im IPFC 2.0 Compiler. Die Eintr„ge im Index wrden ein ASCII-10-Zeichen am Ende erhalten.] Klammern Sie in diesem Fall Index-Punktbefehle zwischen zwei Formatierungsbefehle ein: .snb .fm an .in Wort1 .in Wort2 .fm aus .sn .END IPFDOC .IF HTMLDOC Fr HTML-Dateien gibt es keine Punktbefehle zum Ein- und Ausschalten des Zeilenumbruches. Wenn Sie einen Text nicht formatiert haben wollen, mssen Sie eine Schrift mit Phrase Element PRE verwenden. .END .IF IPFDOC Bei IPF k”nnen Sie bei Festlegung der Schrift ~PRE~ in der Ini-Datei deklarieren, Sie k”nnen sich die eigenen Punktbefehle dann sparen. .END .3 Zentrierter Text .in zentrierter Text Bei zentriertem Text ist die Formatierung immer ausgeschaltet. Zentrierten Text kann man ein- und ausschalten mit dem Punktbefehl ę:Output Centered; .snb .OC an .OC aus .sn Sie k”nnen aber auch bei Festlegung der Schrift ~center~ schreiben, die eigenen Punktbefehle k”nnen Sie dann sparen. .3 Automatischer Rand (auto margin) .in definition list .sv automatischer Rand Sie k”nnen (z. B. fr Definitions-Listen) den linken Rand zwischendurch mit Hilfe von Leerzeichen ver„ndern. .snb *Motherboard* Auf dem Motherboard befinden sich der Hauptprozessor, die RAM Speicherchips und einige weitere wichtige Teile des Computers. *Bildschirm* Computer-Bildschirme gibt es mit Gr”įen von 14 bis 21 Zoll; Am Bildschirm sollte am wenigsten gespart werden. .sn Motherboard Auf dem Motherboard befinden sich der Hauptprozessor, die RAM Speicherchips und einige weitere wichtige Teile des Computers. Bildschirm Computer-Bildschirme gibt es mit Gr”įen von 14 bis 21 Zoll; Am Bildschirm sollte am wenigsten gespart werden. Mit dem Punktbefehl ę:Auto Margin: (autom. Rand) l„įt sich diese Interpretation von Leerzeichen am Zeilenanfang abschalten und wieder einschalten: .snb .AM aus .AM an .sn Die Standardeinstellung ist an.. Man kann den AM Befehl in normalen Flieįtext auf an lassen. Wird die erste Zeile eines Absatzes eingerckt, „ndert das den Rand fr den einen Absatz. Sie mssen den AM Befehl nur dann unbedingt auf aus stellen, wenn Sie nur die erste Zeile eines Absatzes eingerckt haben m”chten. Wenn Sie einen ASCII-Editor mit ASCIIHARDRET verwenden, so sollte die Einrckung nur am Absatzanfang sein; die folgenden Zeilen, die vom Editor umgebrochen werden, drfen keine Leerzeichen am Anfang erhalten. .IF WORDSTARDOC WordStar-Dateien brauchen die Auto Margin Funktion gar nicht.[Sie k”nnen im WordStar jederzeit mit ^OG und weichen Leerschritten den linken Rand beeinfluįen.] .END .2 If-Bedingungen .in If-Bedingung Mit Hilfe von If-Bedingungen lassen sich fr z. B. „hnliche Programmversionen leicht unterschiedliche IPF- bzw HTML-Dateien aus dem selben Quelltext erstellen. Hierfr gibt es drei neue Punktbefehle: .snb .IF BEDINGUNG .ELSE .END .sn Die Groį- oder Kleinschreibung der Bedingungen ist dabei egal. Der ELSE-Befehl ist natrlich optional. Zum Kompilieren des Quelltextes wird in der Kommandozeile z. B. eingegeben: .snp .fu [C:\myProject] HMAKE MeinDoku.txt #BEDINGUNG .fu[] .sn Es k”nnen auch mehrere Bedingungen in die Kommandozeile eingegeben werden. Entscheidend ist das # Zeichen, nicht die Reihenfolge. IF bedeutet "wenn", ELSE bedeutet "andernfalls". Mit END endet die If-Bedingung. Mehrere Bedingungen in der If-Bedingung (verknpft mit AND oder OR) werden nicht untersttzt. Standardm„įig sind die Bedingungen #HTML bzw. #IPF gesetzt. .IF HTMLDOC .1 HTML-spezifische Funktionen HyperMake bietet einige spezielle Funktionen fr Problemstellungen, die speziell bei HTML und dem Ver”ffentlichen im WWW entstehen. Die meisten hier aufgefhrten Funktionen werden nicht ber Befehle im Quelltext, sondern ber die Ini-Datei und ber Kommandozeilenparameter aktiviert. Wenn Sie HyperMake-Texte im WWW ver”ffentlichen wollen, sollten Sie dieses Kapitel durchlesen, auf alle F„lle aber das Unterkapitel zu HTML-Dateinamen! .2 Buttons (Navigations-Kn”pfe) .in Buttons .in Navigations-Kn”pfe Allgemeine Navigations-Buttons Beachten Sie bitte die Button-Bibliothek von HyperMake im Verzeichnis BUTTONS. In HTML-Texten erm”glichen blicherweise Buttons (Navigations-Kn”pfe) am Anfang und am Ende jeder einzelnen HTML-Seite, den Benutzer von einer zur anderen Seite zu leiten. Sie k”nnen in der Ini-Datei entsprechende Funktionen angeben. .snb function for first line = BACK FORWARD CONTENT INDEX text for first line = zurck vorw„rts Inhalt Stichw”rter .sn Die vier Funktionen BACK FORWARD CONTENT INDEX haben ihre feste Bedeutung: ž BACK geht zur Seite, die sich in der logischen Reihenfolge (entsprechend dem Quelltext) vor der aktuellen Seite befindet ž FORWARD geht zur in der logischen Reihenfolge n„chsten Seite ž CONTENT springt zum Inhaltsverzeichnis ž INDEX springt zum Stichwortverzeichnis. Analog zu den Funktions-Bezeichnern BACK FORWARD usw. mssen die Dateinamen der Buttons BACK.GIF, FORWARD.GIF usw. lauten. Zu jeder Funktion gibt es auch einen Text. Wenn im HTML-Browser das automatische Laden von Bildern deaktiviert wird, erscheint statt dem graphischen Button ein entsprechender Text. Sie k”nnen aber auch in der Ini-Datei mit ~buttons = NO~ die graphischen Buttons ganz ausschalten und erhalten dann von vornherein nur den Text als Querverweis statt dem Navigations-Button. Wenn Sie bestimmte Kn”pfe nicht haben wollen, l”schen Sie die entsprechenden Anweisungen in den Zeilen unter "function for.." und "text for..". Dies k”nnen Sie separat fr die Buttons am Seitenanfang ("first line") und Seitenende ("last line") tun. Sie k”nnen auch die Reihenfolge der Kn”pfe entsprechend „ndern, indem Sie in der Ini-Datei sowohl in der Zeile "function for..." als auch "text for..." entsprechende Umstellungen vornehmen. Benutzerdefinierte Navigations-Buttons Es ist nun m”glich, selbst Navigations-Buttons zu definieren, die auf ein beliebiges Kapitel verweisen. Hierfr ist sowohl ein Eintrag in der Ini-Datei als auch ein Punktbefehl im Text erforderlich, der das Ziel-Kapitel kennzeichnet. In der Ini-Datei: .snb function for first line = BACK FORWARD CONTENT INDEX LABEL_A LABEL_B ... text for first line = zurck vorw„rts Inhalt Stichw”rter BezeichA BezeichB ... .sn und im Quelltext in den gewnschten Kapiteln: .snb .ID LABEL_A .ID LABEL_B .sn drckt der Benutzer auf den Button LABEL_A.GIF, gelangt er zum Kapitel, das mit .ID LABEL_A markiert wurde. Groį- oder Kleinschreibung spielt keine Rolle. Es gibt keine Begrenzung der Anzahl von benutzerdefinierten Buttons. Bei Verwendung von ~.ID~ Punktbefehlen heiįt die HTML-Datei dann LABEL_A.HTML, w„hrend HyperMake sonst Dateinamen mit fortlaufender Nummer vergibt. Wenn Sie Navigations-Kn”pfe verwenden wollen, aber ausdrcklich keine festen Dateinamen, k”nnen Sie dies ber einen Kommandozeilenparameter ~/NOID~ erreichen: Beachten Sie bitte die Button-Bibliothek. Buttons als externe Querverweise Es ist zul„ssig, einem Button eine URL zuzuweisen: .snb .URL http://www.netscape.com .ID NETSCAPE .LOCAL .sn Wird in der Ini-Datei NETSCAPE bei "function for..." eingetragen, so erh„lt der Button NETSCAPE.GIF eine URL als Adresse. So k”nnen Sie z. B. eine Programmdokumentation in HTML schreiben und auf jeder Seite einen Button "Homepage" oder Ihr Firmenlogo erscheinen lassen, mit einer Verbindung zu ihrer pers”nlichen Homepage. .2 HTML-Dateinamen .in Dateinamen Normalerweise nummeriert HyperMake die Kapitel einfach durch: N000.HTML, N001.HTML usw. Es gibt verschiedene M”glichkeiten, Einfluį auf die automatische Wahl von Dateinamen zu nehmen. Vorgabe eines festen Dateinamens .snb .2 šber den Autor .ID AUTOR Ich bin 31 Jahre alt, habe Betriebswirtschaft studiert... .sn Sie k”nnen eine bestimmte Textstelle mit einer ID (Identity, Identifizierung) versehen. Auf eine solche Textstelle k”nnen benutzerdefinierte Navigations-Kn”pfe (Buttons) verweisen. Wenn ein Kapitel mit ~.ID LABEL_A~ markiert wurde, wird statt dem Nummern-Dateiname ein konkreter Dateiname LABEL_A.HTML verwendet. So wird verhindert, daį Seiten, die von auįen angesprungen werden, bei einem Update auf einmal ihren Namen „ndern. Das kann auch bei einer umfangreichen Homepage sinnvoll sein: Mit ID markierte HTML-Seiten k”nnen auch separat aktualisiert werden, ohne daį fr jede Textakutalisierung s„mtliche Dateien erneut hochgeladen werden mssen. Mehrere HyperMake-Projekte in nur einem Verzeichnis Der Schalter "pre filename" in der Ini-Datei erlaubt es Ihnen, vor alle HTML-Dateinamen noch eine bestimmte Zeichenfolge zu setzen, z. B. UserN000.HTML, UserN001.HTML. Dies erfordert jedoch fr jedes Projekt eine separate Ini-Datei. Um separate Ini-Dateien zu vermeiden, gibt es einen weiteren Kommandozeilenparamter: .snp .fu [C:\myProject] HMAKE mein.txt /PRE .fu[] .sn erzeugt HTML-Dateien ~MEIN\MEIN*.HTML~ . Sie k”nnen dann gegegebenenfalls die HTML-Dateien aller Einzelprojekte in ein gemeinsames Verzeichnis kopieren. Bei DOS-Laufwerken darf der "pre filename" bzw. der Quelltext nicht l„nger als 3 Buchstaben sein! 8.3 Dateinamen, lange Dateinamen, Groį- und Kleinschreibung Dateinamen gehorchen unter verschiedenen Betriebssystemen unterschiedlichen Gesetzen. DOS kennt nur kurze Dateinamen der 8.3 Schreibweise. Die PC-Betriebssysteme DOS, OS/2, Windows 95 und Windows NT unterscheiden nicht zwischen Groį- und Kleinbuchstaben, wohl aber Unix-Systeme. Und Unix-Systeme sind der Standard bei Internet-Servern. Es kann also vorkommen, daį die Links (Querverweise) auf Ihrem Rechner einwandfrei funktionieren, im Internet nach dem Hochladen auf den Server aber nicht mehr! Um das zu verhindern, bietet HyperMake diverse Mechanismen: Einen Schalter in der Ini-Datei, einen Kommandozeilenparameter und eine automatische Erkennung von Laufwerken mit kurzen DOS-Dateinamen. .snb //possible settings: sample.html SAMPLE.HTML Sample.html sample.htm SAMPLE.HTM Sample.htm filename appearance = sample.html .sn In der Ini-Datei k”nnen Sie einstellen, wie die Dateinamen aussehen sollen. Entscheidend ist das "schw„chste Glied" in der Kette von Kopier- und Hochlade-Vorg„ngen. Erzeugen Sie beispielsweise HTML-Dateien unter OS/2, benutzen aber dann ein DOS bzw. Windows 3.1-Programm zum Hochladen, dann unterliegen alle Dateinamen der 8.3 Beschr„nkung und DOS wandelt alle Kleinbuchstaben in Groįbuchstaben um. Die richtige Einstellung ist also ~SAMPLE.HTM~. Benutzen Sie durchweg Windows95-Programme, sollten Sie ~Sample.html~ w„hlen. W„hlen Sie hier eine falsche Einstellung, etwa ~sample.html~ auf einem DOS-Laufwerk, das der 8.3 Beschr„nkung unterliegt, korrigiert HyperMake die Endung automatisch auf ".HTM" um, wobei die Querverweise ebenfalls richtig gezogen werden. Mit dem Kommandozeilenparameter ~/FAT~ (File allocation table, so heiįt das DOS-Dateisystem) erreichen Sie den selben Effekt wie mit der Einstellung ~SAMPLE.HTM~ in der Ini-Datei: Auch wenn das Dateisystem lange Dateinamen untersttzt, h„lt sich HyperMake an die DOS-Konventionen. Achten Sie auf die richtige Groį- und Kleinschreibung der Dateinamen von GIF-Dateien! Unterschiedliche Sprachen in einem Verzeichnis Wenn Sie etwa eine deutsch- und englischsprachige Homepage in ein gemeinsames Verzeichnis kopieren m”chten, ergibt sich das Problem, daį sowohl die deutschsprachigen Buttons FORWARD.GIF, BACK.GIF usw. als auch die englischsprachigen Buttons identische Dateinamen haben. Der Kommandozeilenparameter ~/_~ (Unterstrich) h„ngt an alle Verweise auf Buttongrafik-Dateinamen noch _ an: FORWARD_.GIF, BACK_.GIF, USER_.GIF. Fr eine der beiden Sprachen mssen Sie diese Funktion verwenden und die Button-Dateinamen entsprechend umbenennen. .2 Titel und Meta-Anweisungen .in Meta-Anweisungen .in Titelzeile Zu Beginn jeder HTML-Datei wird ein Titel festgelegt, der in der Titelzeile (titlebar) des Browsers erscheint. Fr dieses aktuelle Kapitel ist etwa HyperMake 3.0 - Titel und Meta-Anweisungen eine sinnvolle Bezeichnung. Welcher Text auf jeder HTML-Seite als Titel erscheint, k”nnen Sie mit "file title" beeinflussen: .snb //here you can define the text appearing in the browser titlebar //enter DOCTITLE and/or HEADING and fixed text, e.g. a slash; NO means no text file title = DOCTITLE - HEADING .sn DOCTITLE ist der Titel des gesamten HyperMake-Dokuments, den Sie hinter den Punktbefehl ~.TI~ schreiben. HEADING ist der aktuelle šberschrifts-Text. Neben diesen zwei Schlsselw”rtern k”nnen Sie noch einen beliebigen Text schreiben, etwa: .snb file title = Martin Vieregg: DOCTITLE, Kapitel HEADING .sn Bei den HTML-Seiten Inhaltsverzeichnis und Stichwortverzeichnis werden statt HEADING die Texte aus "text for first/last line" verwendet. Fr die Fuįnotendatei bzw. -dateien wird der Text aus dem Ini-Eintrag "notes text" verwendet. Analog zum Titel kann mit "meta content" ein automatischer Meta-Eintrag vorgenommen werden. .snb meta content = DOCTITLE - HEADING .sn An die entsprechende Stelle der HTML-Datei wird dann geschrieben: .snb .sn Dies sind Informationen fr Suchmaschinen im WWW und sollten in keiner ver”ffentlichten HTML-Datei fehlen. Browser zeigen diesen Text nicht an, er wird nur von Suchmaschinen verwendet. Einbinden von benutzerdefinierten HEAD-Anweisungen Es k”nnen entweder fr einzelne oder fr alle HTML-Dateien zus„tzliche Anweisungen im HEAD-Block geschrieben werden. Standardm„įig schreibt HyperMake in die HTML-Datei nur: .snb Titel des Dokuments .sn Vor der Anweisung k”nnen auf Wunsch weitere Informationen erscheinen. Diese werden in Dateien mit festgelegtem Dateinamen abgelegt. Sollen alle HTML-Dateien die zus„tzlichen Informationen erhalten, muį die Datei mit den zus„tzlichen HEAD-tags ~EVERY.HEAD~ heiįen. Soll nur eine bestimmte HTML-Datei diese zus„tzlichen Informationen erhalten, wird sie mit dem bekannten ~.ID USERLABEL~ markiert und dann eine Datei ~USERLABEL.HEAD~ mit dem gewnschten Inhalt angelegt. Entscheidend fr das Einbinden von benutzerdefinierten HEAD-Anweisungen ist die Existenz entsprechender *.HEAD-Dateien. Einen eigenen Schalter hierfr gibt es nicht. Wenn ein "Pre filename" (siehe Ini-Datei) verwendet wird, mssen die Dateinamen der HEAD-Dateien mit dem Pre Filename beginnen. Wird ein DOS-Laufwerk verwendet oder die "filename appearance" ist auf die Erweiterung mit nur 3 Buchstaben gestellt, so muį die Endung der Dateinamen nicht ~.HEAD~, sondern ~.HEA~ lauten. .END .1 Erstellung von Helptables .IF HLPDOC .in Helptable .in Panel ID Das wichtigste Merkmal einer HLP-Datei gegenber einer INF-Datei ist die Verbindung von HLP-Dateien zu PM-orientierten Programmen. INF-Dateien treten alleine auf, HLP-Dateien nur in Verbindung mit einem Programm, das durch die HLP-Datei erkl„rt werden soll. In HLP-Dateien lassen sich Verbindungen zwischen Programmfenstern oder Programmkn”pfen zu Kapiteln des Hypertexts herstellen. Drckt man bei einem solchen Programm auf den fraglichen Knopf und gleichzeitig F1, wird der HLP-Text mit dem entsprechenden Kapitel aufgerufen. Es gibt zwei verschiedene Arten solcher Verbindungen (engl. links): ž Verbindungen ber Helptables ž direkte Verbindungen ber Panel ID's. Helptable-Verbindungen werden durch gleichzeitiges Drcken von F1 mit dem entsprechenden Knopf (oder Menpunkt) aktiviert; statt F1 kann man auch auf einen speziellen Hilfe-Knopf drcken, dessen Flags BS_HELP | BS_NOPOINTERFOCUS gesetzt sind. Im Helptable ist eingetragen, welche Kn”pfe / Menpunkte zu welchen Kapiteln des Hypertext verbunden sind. Direkte Verbindungen laufen nicht ber einen Helptable, vielmehr verwenden sie direkt eine Funktion im Programm-Quelltext, die ein bestimmtes Kapitel aufruft; solche direkte Verbindungen k”nnen auch bei textorientierten Programmen zum Einsatz kommen. Ohne HyperMake mįte also eine Helptable-Datei innerhalb der RC-Datei [Programmierer sollten RC-Dateien kennen; sonst k”nnen Sie dieses Kapitel berspringen, da nur INF-Dateien fr Sie in Frage kommen.] erstellt werden. Fr direkte Verbindungen mįte eine Panel ID header-Datei mit den IPF-internen Kapitel (resource) ID's angelegt werden, assoziiert mit ausdrucksstarken Bezeichnern wie (Panel_Einfuehrung). .2 Erstellen des HyperMake Quelltextes .in ressource connection Im HyperMake Quelltext werden zwei neue Punktbefehle verwendet: Ressource Connection .snb .RC ID_window, ID_button_or_Menu_Item .sn bedeutet, daį wenn der Knopf "ID_button_or_Menu_Item", der sich im Kindfenster "ID_Window" befindet, zusammen mit F1 gedrckt wird, das Kapitel aufgerufen wird, wo der RC-Befehl plaziert ist. .sab ~ID_window~ ist die Konstante, die hinter MENU oder DIALOG in der RC-Datei steht. Achtung: ~ID_window~ ist nicht die Konstante, die hinter DLGTEMPLATE steht.[Wenn Sie hinter DLGTEMPLATE und DIALOG die gleiche Konstante verwenden, ist das schon in Ordnung.] Und mit Panel ID .snb .ID Kapitel_Name .sn wird dem Kapitel, wo dieser Punktbefehl steht, die Kurzbezeichnung "Kapitel_Name" gegeben. Mit dem Aufruf von DisplayHelpPanel(Kapitel_Name) im Programm-Quelltext kann dieses Kapitel direkt aufgerufen werden. Pascal-Programmierer aufgepaįt! Bei der Kurzbezeichnung hinter dem ID-Befehl wird Groį- und Kleinschreibung unterschieden! Sie k”nnen diese Punktbefehle irgendwo innerhalb des Kapitels verwenden, zu dem die Verbindung hergestellt werden soll. Ich empfehle jedoch, diese Befehle m”glichst nah an die Stelle des Kapitels zu setzen, wo der entsprechende Knopf bzw. Menpunkt erkl„rt wird. Das hat den Vorteil, daį wenn Sie sp„ter das Kapitel in mehrere Unterkapitel aufteilen, automatisch die Verbindung zum neuen Unterkapitel hergestellt wird - ohne daį die RC- und IC-Punktbefehle an eine andere Stelle gesetzt werden mssen. Wenn Sie den RC-Punktbefehl verwenden, mssen Sie normalerweise zwei ID's eingeben: Die erste fr das Programmfenster, in dem sich der Knopf/Menpunkt befindet[zu verwenden ist der Konstanten-Name, der in der RC-Datei hinter MENU oder DIALOG steht], und die zweite fr die ID des Knopfes, Menpunktes, Eingabefelds usw. (engl. item). Wenn viele Items aus dem gleichen Programmfenster angegeben werden, muį man nicht die letzte Window ID wiederholen: .snb .RC , ID_button_or_Menu_Item .sn Vor dem Komma wird die letzte Window ID eingesetzt. Die HLP-spezifischen RC- und ID-Befehle haben nur Auswirkung auf die Helptable- und Panel-ID-Datei, die IPF-Datei wird dadurch nicht beeinfluįt. Das bedeutet, Sie k”nnen bedenkenlos aus solch einer IPF-Datei eine INF-Datei statt einer HLP-Datei erstellen. Fr jede Window ID sollten Sie den RC-Befehl ohne Angabe eines Items, also mit nur einem Parameter, verwenden. Alle Items eines solchen Windows, die keinen eigenen RC-Befehl haben, erhalten die Verbindung, die im RC-Befehl mit nur einem Parameter festgelegt ist. Wenn Sie den RC-Befehl allein mit zwei Parametern verwenden, gibt HyperMake eine Warnung aus. .in Helptable-Datei Der folgende HyperMake Quelltext enth„lt die zwei neuen Punktbefehle Ressource connection und Panel ID: .snz .1 Einfhrung .RC ID_Kindfenster .ID PANEL_Einfuehrung Das ist die Dokumentation von meinem Programm. .1 Verwendung des OK-Knopfes .RC ID_Kindfenster, ID_OK .ID PANEL_OK_Benutzung Mit dem OK-Knopf - stellen Sie sich nur vor - k”nnen Sie OK drcken. .1 Verwendung des Cancel-Knopfes .RC ID_Kindfenster, ID_Cancel Mit dem Cancel-Knopf k”nnen Sie den Befehl abbrechen. .sn .2 Einbindung in den C Programm-Quelltext HyperMake erstellt automatisch eine Datei HLPTABLE.RC: .snb #define SUBTABLE_ID_Kindfenster 7001 HELPTABLE HELP_TABLE { HELPITEM ID_Kindfenster, SUBTABLE_ID_Kindfenster, 1 // Einfhrung } HELPSUBTABLE SUBTABLE_ID_Kindfenster { HELPSUBITEM ID_OK, 2 // Verwendung des OK-Knopfes HELPSUBITEM ID_Cancel, 3 // Verwendung des Cancel-Knopfes } .sn HyperMake erstellt auįerdem eine Datei PANELID.H: .snb /*****Panel ID's created by HyperMake*****/ #define PANEL_Einfuehrung 1 #define PANEL_OK_Benutzung 2 .sn Die Nummern 1, 2 und 3 sind die IPF-internen Kapitel-ID's, die fr den HyperMake-Benutzer ohne Belang sind. In der Helptable-Datei werden deshalb noch als Kommentar die Kapitelberschriften eingetragen, so daį sich die Helptable-Datei fr die Fehlersuche leichter lesen l„įt. (Normalerweise drften Sie kein Interesse haben, die Helptable und Panel ID -Datei zu lesen.) Den Startwert fr die in der Helptable-Datei verwendeten Subtable ID's k”nnen Sie in der Ini-Datei unter der Einstellung ~Help Subtable Start ID~ „ndern, auįerdem k”nnen Sie auch die Dateinamen der zwei erstellten Dateien „ndern. Die Helptable-Datei und Panel ID -Datei wird einfach in den Programm-Quelltext eingebunden: .snb #include "HLPTABLE.RC" .sn etwa nach einem MENU oder DLGTEMPLATE-Block in der RC-Datei und .snb #include "PANELID.H" .sn zu Beginn des Programmtextes (eine C- oder CPP-Datei). In der eigentlichen header-Datei progname.h mssen Sie eine Konstante HELP_TABLE mit irgendeinem unbenutzten Wert definieren, z. B. ~#define HELP_TABLE 7000~ Diese Konstante muį in der RC- und in der C bzw. CPP-Datei gltig sein. Im C Quelltext ben”tigt man mindestens zwei Funktionen: .snb void InitHelp (hwnd) /*initialisiert den Help-Prozeį*/ void DestroyHelp () /*deaktiviert ihn*/ .sn diese verwenden die Konstante HELP_TABLE. Der Funktion InitHelp muį der window handle des Programms bergeben werden. Dieser muį natrlich schon definiert worden sein. Wenn Sie kein Standardwindow sondern nur eine Dialogbox als Programm haben, k”nnen Sie InitHelp unter WM_INITDLG und DestroyHelp unter WM_CLOSE aufrufen. Sonst rufen Sie die beiden Funktionen im Hauptprogramm vor und nach der Window-Message-Schleife ~while WinGetMsg...~ auf. Eine dritte Funktion .snb void DisplayHelpPanel (PanelID) .sn wird ben”tigt, um eine direkte Verbindung zwischen dem Programm und einem Hypertext-Kapitel herzustellen. Es ist die Programm-Seite des Panel ID Punktbefehls, den Sie im HyperMake Quelltext verwenden. Ich habe eine kompakte Version dieser drei Funktionen geschrieben. Um sie kompilieren zu k”nnen, mssen Sie am Anfang folgendes eintragen:[Das kann Compiler-spezifisch sein; ich benutze Borland C] .snb #define INCL_HELP .sn .3 C Quelltext fr die drei Hilfe-functions .snb .in function InitHelp .in function DestroyHelp .in function DisplayHelpPanel #define HelpFilename "FILENAME.HLP" #define HelpWindowTitle "šberschrift des Hypertext-Fensters" BOOL fHelpEnabled; static HWND hwndHelpInstance; #define InfoBox(st) WinMessageBox (HWND_DESKTOP, HWND_DESKTOP, st, "", 0, MB_OK | MB_ERROR) /*wird vor die Hauptprogramm-Message-Schleife (while WinGetMsg...) gesetzt*/ VOID InitHelp (HWND hwndClientFrame) { HELPINIT hini; /* If we return because of an error, Help will be disabled */ fHelpEnabled = FALSE; /* Initialize help init structure */ hini.cb = sizeof(HELPINIT); hini.ulReturnCode = 0; /* If tutorial added, add name here */ hini.pszTutorialName = (PSZ)NULL; hini.phtHelpTable = (PHELPTABLE)MAKELONG(HELP_TABLE, 0xFFFF); hini.hmodHelpTableModule = 0; hini.hmodAccelActionBarModule = 0; hini.idAccelTable = 0; hini.idActionBar = 0; hini.pszHelpWindowTitle = HelpWindowTitle; hini.fShowPanelId = CMIC_HIDE_PANEL_ID; hini.pszHelpLibraryName = HelpFilename; /* Creating help instance */ hwndHelpInstance = WinCreateHelpInstance(hab, &hini); if(hwndHelpInstance == 0L || hini.ulReturnCode) { InfoBox("Failed to load help manager."); return; } /* Associate help instance with main frame */ if(!WinAssociateHelpInstance(hwndHelpInstance, hwndClientFrame)) { InfoBox("Failed to load help manager."); return; } /* Help manager is successfully initialized so set flag to TRUE */ fHelpEnabled = TRUE; return; } /*wird hinter die Hauptprogramm-Message-Schleife gesetzt*/ VOID DestroyHelp () { if(hwndHelpInstance != 0L) WinDestroyHelpInstance(hwndHelpInstance); return; } /* einige m”gliche Parameter fr SendHelpMessage HM_HELP_INDEX zeigt Index HM_HELP_CONTENTS, zeigt Inhalt HM_DISPLAY_HELP zeigt Hilfe fr Hilfefunktion (help for help) */ VOID SendHelpMessage (LONG HelpMessage) { if(fHelpEnabled) if((LONG)WinSendMsg(hwndHelpInstance, HelpMessage, (MPARAM) 0, (MPARAM) 0)) InfoBox ("Failed to display help panel."); } /* Parameter sind die Panel ID's, definiert ber die ID Punktbefehle im HyperMake Quelltext */ VOID DisplayHelpPanel (LONG PanelID) { if(fHelpEnabled) if((LONG)WinSendMsg(hwndHelpInstance, HM_DISPLAY_HELP, MPFROMLONG(MAKELONG(PanelID, NULL)), MPFROMSHORT(HM_RESOURCEID))) InfoBox ("Failed to display help panel."); } .sn .2 Einbindung in den Pascal Programm-Quelltext HyperMake erstellt automatisch eine Datei HLPTABLE.RC: .snb CONST SUBTABLE_ID_Kindfenster = 7001 HELPTABLE 1000 BEGIN HELPITEM ID_Kindfenster, SUBTABLE_ID_Kindfenster, 1 /* Einfhrung */ END HELPSUBTABLE SUBTABLE_ID_Kindfenster BEGIN HELPSUBITEM ID_OK, 2 /* Verwendung des OK-Knopfes */ HELPSUBITEM ID_Cancel, 3 /* Verwendung des Cancel-Knopfes */ END .sn HyperMake erstellt auįerdem eine Datei PANELID.H: .snb { Panel ID's created by HyperMake } const PANEL_Einfuehrung = 1; PANEL_OK_Benutzung = 2; .sn Die Nummern 1, 2 und 3 sind die IPF-internen Kapitel-ID's, die fr den HyperMake-Benutzer ohne Belang sind. In der Helptable-Datei werden deshalb noch als Kommentar die Kapitelberschriften eingetragen, so daį sich die Helptable-Datei fr die Fehlersuche leichter lesen l„įt. (Normalerweise drften Sie kein Interesse haben, die Helptable und Panel ID -Datei zu lesen.) Den Startwert fr die in der Helptable-Datei verwendeten Subtable ID's k”nnen Sie in der Ini-Datei unter der Einstellung ~Help Subtable Start ID~ „ndern, auįerdem k”nnen Sie auch die Dateinamen der zwei erstellten Dateien „ndern. Die Helptable-Datei und Panel ID -Datei wird einfach in den Programm-Quelltext eingebunden: .snb {$I HLPTABLE.RC} .sn etwa nach einem MENU oder DLGTEMPLATE-Block in der RC-Datei und .snb {$I PANELID.INC} .sn zu Beginn des Programmtextes (eine PAS-Datei). Es gibt nun erst einmal zwei Funktionen, mit denen Sie die HLP-Datei aufrufen k”nnen. .snb DisplayHelpPanel (PanelID) .sn wird ben”tigt, um eine direkte Verbindung zwischen dem Programm und einem Hypertext-Kapitel herzustellen. Es ist die Programm-Seite des Panel ID Punktbefehls, den Sie im HyperMake Quelltext verwenden. .snb SendHelpMessage (HM_HELP_CONTENTS) .sn ruft direkt das Inhaltsverzeichnis auf. Es gibt noch weitere HM_*-Konstanten, die bei SpeedPascal in der Unit PMHELP.PAS definiert sind. Die weitere Einbindung in den Programmtext h„ngt davon ab, ob Sie die SpeedPascal 1.5 OPML verwenden oder nicht. .3 Einbindung der Hilfefunktion bei Benutzung der OPML In der Methode .snb TApplication.InitMainWindow .sn mssen Sie lediglich am Ende eine Zeile einfgen: .snb MainWindow^.InitWindowHelp ('MYPROG.HLP', 'Hilfeberschrift'); .sn Das war's auch schon. .3 Einbindung der Hilfefunktion auf konventionelle Weise Zum Aktivieren und Deaktivieren der Hilfe-Funktion ben”tigen Sie zwei Funktionen: .snb uses PMHELP; InitHelp (hwnd); {initialisiert den Help-Prozeį} DestroyHelp; {deaktiviert ihn} .sn Diese beiden Prozeduren sind ab SpeedPascal 1.5 in der Unit PMHELP definiert. Der Prozedur InitHelp muį der window handle des Programms bergeben werden. Dieser muį natrlich schon definiert worden sein. Wenn Sie kein Standardwindow sondern nur eine Dialogbox als Programm haben, k”nnen Sie InitHelp unter WM_INITDLG und DestroyHelp unter WM_CLOSE aufrufen. Sonst rufen Sie die beiden Funktionen im Hauptprogramm vor und nach der Window-Message-Schleife ~while WinGetMsg...~ auf. Unmittelbar vor der Prozedur "InitHelp" muį noch Variablen gesetzt werden: .snb HelpFilename := 'MYPROG.HLP'; HelpWindowTitle := 'šberschrift des Hypertext-Fensters'; HELP_TABLE := 1000; .sn Die Zahl 1000 kommt ebenfalls im HyperMake erstellten Helptable vor. Falls Sie kein SpeedPascal 1.5 (oder sp„ter) benutzen, habe ich die relevanten Variablen und Prozeduren zusammengestellt. .4 Pascal Hilfe-Quelltext .snb {Help manager helpers} FUNCTION InfoBox(st:STRING):LONGINT; BEGIN result:=WinMessageBox (HWND_DESKTOP, HWND_DESKTOP, st,'', 0, MB_OK | MB_ERROR); END; {wird vor die Hauptprogramm-Message-Schleife gesetzt} PROCEDURE InitHelp (hwndClientFrame:HWND); VAR hini:HELPINIT; { If we return because of an error, Help will be disabled } BEGIN fHelpEnabled := FALSE; { Initialize help init structure } hini.cb := sizeof(HELPINIT); hini.ulReturnCode := 0; { If tutorial added, add name here } hini.pszTutorialName := NIL; hini.phtHelpTable := PHELPTABLE(MAKELONG(HELP_TABLE, $FFFF)); hini.hmodHelpTableModule := 0; hini.hmodAccelActionBarModule := 0; hini.idAccelTable := 0; hini.idActionBar := 0; hini.pszHelpWindowTitle := @HelpWindowTitle; hini.fShowPanelId := CMIC_HIDE_PANEL_ID; hini.pszHelpLibraryName := @HelpFilename; { Creating help instance } hwndHelpInstance := WinCreateHelpInstance(AppHandle,hini); if ((hwndHelpInstance = 0 )OR(hini.ulReturnCode<>0)) THEN BEGIN InfoBox('Failed to load help manager.'); exit; END; { Associate help instance with main frame } if not WinAssociateHelpInstance(hwndHelpInstance, hwndClientFrame) THEN BEGIN InfoBox('Failed to load help manager.'); exit; END; { Help manager is successfully initialized so set flag to TRUE } fHelpEnabled := TRUE; END; {wird hinter die Hauptprogramm-Message-Schleife gesetzt} PROCEDURE DestroyHelp; BEGIN IF hwndHelpInstance <> 0 THEN WinDestroyHelpInstance(hwndHelpInstance); END; { einige m”gliche Parameter fr SendHelpMessage HM_HELP_INDEX zeigt Index HM_HELP_CONTENTS, zeigt Inhalt HM_DISPLAY_HELP zeigt Hilfe fr Hilfefunktion (help for help) } PROCEDURE SendHelpMessage (HelpMessage:LONG); BEGIN if fHelpEnabled THEN if WinSendMsg(hwndHelpInstance, HelpMessage, 0, 0)<>0 then InfoBox ('Failed to display help panel.'); END; { Parameter sind die Panel ID's, definiert ber die ID Punktbefehle im HyperMake Quelltext } PROCEDURE DisplayHelpPanel (PanelID:LONG); BEGIN if fHelpEnabled then if WinSendMsg(hwndHelpInstance, HM_DISPLAY_HELP, MPFROMLONG(MAKELONG(PanelID, 0)), MPFROMSHORT(HM_RESOURCEID))<>0 then InfoBox ('Failed to display help panel.'); END; .sn .2 Mehrere verschiedensprachige HLP-Dateien Falls Sie mehrere verschiedensprachige HLP-Dateien und nur eine EXE-Datei erstellen, reicht es aus, wenn Sie die ID- und RC-Punktbefehle in nur einem HyperMake-Quelltext eintragen. Wenn Sie dann im anderssprachigen HyperMake-Quelltext exakt die gleiche Gliederungsstruktur haben, gibt es keine Probleme. HyperMake numeriert n„mlich die Kapitelberschriften einfach fortlaufend durch. .ELSE Das IBM IPF-Format wird ben”tigt, um kontextsenitive Programmdokumentationen (Erweiterung HLP) unter dem Betriebssystem OS/2 zu erstellen. HyperMake stellt hier fr die Verbindung Hypertext - EXE-Programm einige Funktionen zur Verfgung. Die Dokumentation darber ist aber nur vorhanden, wenn der Hilfetext mit der Bedingung #HLPDOC erzeugt wurde. Fr die von Microsoft geplante Windows HTML Programmhilfe werde ich in einer knftigen HyperMake Version vergleichbare Funktionen anbieten. .END HLPDOC .FA verti 40 .1 Verzeichnis aller Punktbefehle Hier finden Sie eine kurze Beschreibung aller HyperMake Punktbefehle. Die gleiche Kapitelstruktur finden Sie in Erstellen eines HyperMake Quelltextes. .in Verzeichnis aller Punktbefehle Einige Punktbefehle sind speziell deutsch und haben englische oder auch WordStar-Synonyme; diese zweite m”gliche Schreibweise von Punktbefehlen ist in Klammern gesetzt und kann genauso verwendet werden. .2 Grundlagen .sab ~..Kommentar~ "Kommentar" wird nicht interpretiert. .IF IPFDOC .snb .:ipf-Kommando. .:ipf-Kommando. Ausdruck .sn Ein IPF-Kommando kann auch direkt eingegeben werden. .END .IF HTMLDOC .snb .HTML <HTML-Kommandos> Flieįtext usw. .HYPERMAKE .sn Direkte Eingabe von HTML Text. .snb .HC an (on) .HC aus (off) .sn l„įt die Verwendung von <HTML-Tags> mit spitzen Klammern im HyperMake-Quelltext zu. Standard ist aus. .END HTMLDOC .2 Textanfang ~.TI Hypertext-Titel~ setzt den Titel des Hypertexts. .IF IPFDOC ~.<>~ stellt HLP-Dateien die Hypertext-Benutzerkn”pfe "Inhalt", "Zurck" und "Vorw„rts" zur Verfgung, die es sonst nur bei INF-Dateien gibt. .END .2 Kapitel ~.1~ bis ~.6~ definiert eine Gliederungsebene ~.1~ ~Hauptberschrift~ Die Kapitelberschrift des ersten Punktes der ersten Gliederungsebene heiįt "Hauptberschrift". .IF HTMLDOC (Heading size) Žnderung der Gr”įe des šberschrifts-Textes bei HTML. Z. B. 4. Ebene erh„lt die Schriftgr”įe der 2. Ebene. ~.HS 123234~ .END Erscheinungsbild der Querverweise zu Unterkapitel .snb .sc beliebiger trenntext .sc RETURN (Standard) .sc PARAGRAPH .sc LIST .sn Fensteranordnung (Frames) ~.FA~ (~.WA~) ~.FA hori 30~ ~.FA hori 30 verti 40 III~ Mit Fensteranordnung k”nnen mehrere Fenster verschiedener Gliederungsebenen gleichzeitig angezeigt werden. Der Punktbefehl muį vor dem ersten Gliederungsebenen-Punktbefehl geschrieben werden, der nur noch einen Teil des Bildschirms einnehmen soll. Kapitel-ID ~.ID NAME~ Das Kapitel, in dem der ID Punktbefehl steht, erh„lt die ID "NAME". .IF HTMLDOC Der HTML Dateiname lautet dann statt einer fortlaufenden Nummer "NAME.HTML". In der Ini-Datei kann unter "function for link for" das Schlsselwort "NAME" eingetragen werden. Es erh„lt dann einen Navigations-Knopf "NAME.GIF" am Anfang bzw. Ende der HTML-Seite einen Querverweis zum mit ~.ID NAME~ markierten Kapitel. Sie finden eine Button-Bibliothek im Verzeichnis BUTTONS. .END .IF IPFDOC Bei IPF wird dieser Befehl fr die Erstellung von Helptables genutzt. .END .2 Schriften ~.SNX~ (~.SFX~) ~.SAX~ (~.AFX~) Schrift Normal und Schrift Alternativ stellt die Schrift X ein. X steht fr einen Buchstaben von A bis Z und von a bis z; es wird also Groį- und Kleinschreibung unterschieden. Die Bedeutung der Schriftbuchstaben werden in der Ini-Datei unter Fonts festgelegt. Schrift Alternativ gilt zwischen zwei Alternativ Umschaltzeichen, diese werden ebenfalls in der Ini-Datei festgelegt. .2 Listen ~.SL~ (~.OL~) macht aus den n„chsten Auflistungen eine sortierte Liste ~.UL~ stellt wieder auf unsortierte Listen (Standardeinstellung). .2 Einbindung von Grafiken ~.BM Dateiname~ gibt eine Grafik dateiname.bmp (IPF) bzw. dateiname.gif (HTML) zentriert aus. ~.BTX Dateiname~ schreibt im Flieįtext statt dem Buchstaben X die Grafik dateiname.bmp. .2 Querverweise und Index ~.IZX~ (~.ICX~) w„hlt das beliebige Zeichen X als Indexzeichen. ~.IN Ausdruck~ nimmt "Ausdruck" im Index auf; alle Vorkommnisse von "Ausdruck" im gesamten Hypertext erhalten einen Querverweis zu dem Kapitel, in dem der .IN Punktbefehl steht. ~.IV Ausdruck~ Index Vertauscht: wie .IN, verwendet aber das letzte Wort des Ausdrucks als fhrendes Wort. .IF IPFDOC Externe Querverweise (IPF) ~.EX extern.inf~ ~.ID Kapitel_Einleitung~ ~.IN Ausdruck~ ~.EX~ Alle Vorkommnisse von "Ausdruck" erhalten einen externen Querverweis zu dem Kapitel in der Datei extern.inf, das mit ~.ID Kapitel_Einleitung~ markiert wurde. .END IPFDOC .IF HTMLDOC Externe Querverweise (HTML) ~.URL URL~ ~.IN Ausdruck~ ~.LOCAL~ Alle Vorkommnisse von "Ausdruck" erhalten einen externen Querverweis zu der URL "URL". .END HTMLDOC .IF IPFDOC Programme starten (IPF) ~.EX Programmname.exe Parameter~ ~.IN Ausdruck~ ~.EX~ Alle Vorkommnisse von "Ausdruck" werden zu einem Querverweis, bei dem das Programm "Programmname" mit dem Parameter "Parameter" gestartet wird. .END .2 Duplizierung von Kapitelberschriften ~.dp34C~ Die Kapitelberschrift wird in Gliederungsebene 3 und 4 am Anfang des Flieįtextes mit Schrift C dupliziert. ~.dp##C~ In allen Gliederungsebenen wird die šberschrift mit Schrift C im Flieįtext dupliziert, als Querverweis-Ziel verwendet (erster #) und in den Index aufgenommen (zweiter #). ~.dp-34~ schaltet die Duplizierung in Gliederungsebene 3 und 4 wieder aus. .2 Tabellen (Tables) .snb .TA Tabellenberschrift Zelle eins Zelle zwei Zelle drei zweite Zeile zweite Zeile eine+ dritte Zeile " groįe Zelle .TA .sn wird zu: .TA Tabellenberschrift Zelle eins Zelle zwei Zelle drei zweite Zeile zweite Zeile eine+ dritte Zeile " groįe Zelle .TA In Tabellen k”nnen Zell-Zeilen mit " und mit + zusammengefgt werden (nur HTML). ~.tc X~ (table character) „ndert das Zusammenfge-Zeichen + in einen beliebiegen Buchstaben. ~.TT~ (Table Tags) Standard ist ~.TT BORDER CELLPADDING=5~ Grauer Hintergrund ohne Bild: ~.TT BORDER CELLPADDING=5 BGCOLOR="#D0D0D0"~ .2 Linienziehen .snb ..LIÜŻ .LIXYZ X Y X ŚÄÄÄĀÄÄÄæ ³ ³ ³ Y Ergebnis: ĆÄÄÄÅÄÄÄ“ ³ ³ ³ X X ĄÄÄÄĮÄÄÄŁ .LI ..li .sn Im Linienziehen Punktbefehl steht das beliebige Zeichen X fr die Ecken und Y fr Unterteilungen des Rechtecks. Ein Zeichen Z vor X oder Y macht Doppelstriche (nur IPF). .2 Fuįnoten ~.FU{}~ ~.FU{}snX~ definiert die Zeichen, mit denen der Inhalt von Fuįnoten eingeklammert wird; definiert zus„tzlich noch eine Schrift X fr das Fuįnotenfenster. Die Eingabe .snb und Sie erhalten {Inhalt der Fuįnote}. .sn fhrt zu: und Sie erhalten [Inhalt der Fuįnote]. .IF HTMLDOC ~.FS 30~ Fuįnoten Size: „ndert den Standardwert der Aufteilung HTML-Textfenster / Fuįnotenfenster von 85 zu 15 auf 70 zu 30. .END ~.FT XXX~ Fuįnoten-Text: schreibt "XXX" statt dem standardm„įigen "*". Grafik statt Text ist erlaubt (Verwendung von Bitmap Text). .2 R„nder und Formatierung ~.LM 10~ setzt den linken Rand (left margin) vom Standardwert 1 nach 10. .IF IPFDOC ~.FM aus~ (~.FM off~) ~.FM an~ (~.FM on~) (nur IPF) Mit dem Punktbefehl Formatieren wird die Formatierung aus- und eingeschaltet. Standard ist an. .END ~.OC an~ (~.OC on~) ~.OC aus~ (~.OC off~) schaltet zentrierten Text (Output Centered) an und aus. ~.AM aus~ (~.AM off~) ~.AM an~ (~.AM on~) verstellt den linken Rand dadurch, daį ein Absatz mit entsprechenden Leerzeichen beginnt. Standard ist an. .IF HTMLDOC In HTML-Dateien wird der Rand nur in Fnfer-Schritten verstellt. .END .2 If-Bedingungen .snb .IF BEDINGUNG .ELSE .END .sn bertr„gt nur bestimmte Teile des Quelltextes ins IPF-Format. Die If-Bedingungen werden ber die Kommandozeile gesetzt (Groį- oder Kleinschreibung egal) .snp .fu [C:\myProject] HMAKE MeinDoku.txt #BEDINGUNG .fu[] .sn .2 Erstellung von Helptables (nur IPF, zur Erstellung von IBM HLP-Dateien) .snb .RC ID_window .RC ID_window, ID_button_or_Menu_Item .RC , ID_button_or_Menu_Item .ID PanelID .sn RC Punktbefehle erzeugen einen Helptable mit dem Dateinamen HELPTABLE.RC, ID Punktbefehle eine Datei mit Panel ID's unter dem Dateinamen PANELID.H. .FA hori 40 .1 Ini-Datei .in Ini-Datei In der Ini-Datei k”nnen Sie einige dokumenten- und sprachspezifische Einstellungen vornehmen. Es empfiehlt sich, fr jedes Projekt eine eigene Ini-Datei anzulegen. Die Ini-Datei k”nnen Sie mit einem ASCII-Editor ver„ndern. Die erste Zeile wird nicht interpretiert. Fr Ihre eigene Ini-Datei benutzen Sie als besser eine Kopie von BEISPIEL.INI als von DOKU.INI. In letzterer sind recht ausgefallene ASCII-Werte fr die Toggles gew„hlt. Wie in C++ sind Zeilen, die mit zwei Schr„gstrichen // beginnen, auch Kommentarzeilen. Windows-konform k”nnen Kommentarzeilen auch mit ; beginnen. Die Reihenfolge der Schalter darf ge„ndert werden, aber es muį jeder Schalter einmal vorkommen. Mit wenigen Ausnahmen wird in der Ini-Datei Groį- und Kleinschreibung nicht unterschieden. Der Text links vom Istgleich-Zeichen = ist der Name des Schalters; dieser darf nicht ge„ndert werden. Rechts davon drfen Einstellungen ge„ndert werden. .2 general settings (Allg. Einstellungen) Registration key (Registrierungsschlssel) .in Registration key .in Registrierungsschlssel .snb Registration key = 0 .sn Hier tragen Sie Ihren Registrierungs-Code ein, um Quelltexte von mehr als 20 kB verarbeiten zu k”nnen. Siehe auch Registrierung. Language (Sprache) .snb //possible settings: ENGLISH, GERMAN, C, PASCAL Language = GERMAN C .sn Landessprache: HyperMake kann entweder auf englisch oder auf deutsch Fehlermeldungen ausgeben; auf die erstellte HTML-Datei oder IPF-Datei hat dieser Schalter keine Wirkung. Diesen Hypertext gibt es auch auf englisch. Einige Punktbefehle weichen in der englischen Anleitung von den deutschen Befehlen ab; sie werden gleichermaįen interpretiert. Programmiersprache (nur IPF): Wenn Sie von HyperMake Panel ID und Helptable Dateien erstellen lassen, k”nnen Sie zwischen C und ęPascal w„hlen. beep (Pieps) .snb //beep when finishing compiling - possible settings: YES, NO beep = YES .sn Wenn HyperMake eine IPF-Datei oder mehrere HTML-Dateien erfolgreich erstellt hat, h”ren Sie einen Pieps. Sie k”nnen diesen Ton hier abstellen, indem Sie ~NO~ statt ~YES~ eingeben. .2 format settings (Format-Einstellungen) Target (Zielformat) .in Zielformat .snb //possible settings: IPF, HTML Target = HTML .sn Die Standardeinstellung kann durch die Kommandozeilenparameter IPF und HTML tempor„r berschrieben werden. Source format (Quelltext-Format) .in source format .snb //possible Settings: ASCIIHARDRET, ASCIISOFTRET, WORDSTAR4 Source format = ASCIISOFTRET .sn Sie haben drei verschiedene Quelltext-Formate zur Auswahl. Siehe Bedeutung von Returns. Source Codepage (Quelltext-Zeichensatztabelle) .snb //possible Settings: ISO, IBM source codepage = IBM .sn Zwei verschiedene Codepages (Zeichensatztabellen) k”nnen Sie fr Ihre Quelltexte ausw„hlen: ISO (ISO 8859-1), auch Latin1 genannt, oder IBM 850 bzw. 437. ISO ist fr Windows und Unix blich, IBM fr DOS und fr OS/2. Wenn Sie diese Einstellung falsch w„hlen, so werden Umlaute falsch angezeigt bzw. interpretiert. Wenn Sie diese Einstellung ver„ndern, mssen Sie auch die Umlaute in der Ini-Datei, etwa unter extended letters, entsprechend anpassen. .2 specific characters (besondere Zeichen) List chars (Auflistungszeichen) .snb //only ASCII source List chars = =- .sn Auflistungszeichen werden fr unsortierte Listen und sortierte Listen ben”tigt, wenn Sie Auflistungen mit einem ASCII-Editor erstellen wollen. Index char (Indexzeichen) .snb Index char = # .sn Siehe Erstellung von Querverweisen, Index und Indexzeichen. Mit dem Punktbefehl ~.IZX~ wird die hier festgelegte Standardeinstellung mit dem Zeichen X berschrieben. toggles (Umschalter) .snb //highlighted char toggles //both HTML and IPF: 1 alternate 2 italic 3 bold 4 underlined //only IPF: 5 red 6 cyan 7 blue //only HTML: 8 strike 9 big 10 small 11 sub 12 sup // 123456789012 toggles = ************ .sn Hier lassen sich die Umschaltzeichen festlegen. Sie mssen immer alle zw”lf Zeichen eingeben, auch wenn Sie IPF oder HTML nicht benutzen. .IF WORDSTARDOC Bei der Verwendung von WordStar-Steuerzeichen mssen Sie die Zeichen eingeben, die dem ASCII-Code entsprechen. [Also etwa fr ^PA Alt-1, fr ^PB Alt-2, fr ^PS Alt-19 usw.] .END Index Filter .in index filter .snb //characters not shown in index and duplicated heading index filter = (). .sn Es k”nnen bestimmte Zeichen im Stichwortverzeichnis und bei der Duplizierung von Kapitelberschriften unterdrckt werden. Extended Letters (sprachspez. Zeichen, insb. Umlaute) .in extended letters .sv sprachspezifische Zeichen .snb //language specific letters besides A...Z, a...z, 0...9 //english '- //german „”įŽ™š- extended letters = „”įŽ™š- .sn Sie mssen HyperMake die deutschen Umlaute mitteilen, die er als normale Buchstaben behandeln soll. Wenn Sie dies nicht tun, interpretiert HyperMake die Buchstaben links und rechts vom Umlaut als seperate W”rter. Die normale Markierung des Wortes "Kinderg„rten" h„tte dann einen Indexeintrag "Kinderg" zur Folge. Damit eine Bezeichnung wie "CONFIG.SYS" oder "Eule (Film)" einen Querverweis bekommt, mssen Punkt bzw. Klammern in der Ini-Datei unter extended letters aufgefhrt sein. Gleichzeitig mssen Sie aber dann aufpassen, wenn Sie etwa eine Markierung machen wie (#Wort). Dann wird nicht "Wort" markiert, sondern "Wort)." - Mit dem Effekt, daį die meisten gewnschten Querverweise nicht gezogen werden. Richtig ist dann die Markierung (#:Wort:). Sie sollten sich genau berlegen, ob Sie den Bindestrich "-" auch in dieser Liste aufnehmen. Ist der Bindestrich ein "extended letter", wird er also als Buchstabe behandelt, k”nnen Ausdrcke wie "Ini-Datei" einfach mit dem Indexzeichen markiert werden, ohne Doppelpunkt-Klammern; dafr wird aber beim Wort Datei, wenn es an anderer Stelle markiert wurde, kein Querverweis erstellt. Im anderen Fall wird mit Ini-Datei wie mit "Ini Datei" verfahren. .2 Font characters (Schrift-Buchstaben) .snb //Font chars from A to Z and from a to z (case-sensitive!) //both HTML and IPF: size Linestandard OmitLinks PRE center //only IPF: Fontname codepage foregroundcolor BACKGROUNDCOLOR //only HTML: PHRASEELEMENT Color Font A = 15 Courier CODE Font b = Courier 12 CODE black 437 Linestandard OmitLinks Font B = 30 Helv neutral Font Z = GREEN 30 Helv yellow Font G = 15 Helv black Font T = 18 Tms_Rmn Font C = black Font o = OmitLinks .sn Hier lassen sich Schriftbuchstaben fr Schriften definieren, und zwar von A bis Z und von a bis z. Beachten Sie, daį zwischen Groį- und Kleinschreibung unterschieden wird. Die Reihenfolge der Einstellungen hinter dem = Zeichen ist egal. Kennzeichen der einzelnen Parameter hinter dem = sind: ž Schriftgr”įe: alle Zahlen, die kleiner als 200 sind ž Codepage: (nur IPF) alle Zahlen gr”įer/gleich 200 ž Vordergrundfarbe: - IPF: alle Farben in Kleinbuchstaben: default, blue, cyan, green, neutral, red, yellow, black. - HTML: beginnt mit Groįbuchstabe, dann folgen Kleinbuchstaben: Black, Silver, Gray, White, Maroon, Red, Purple, Fuchsia, Green, Lime, Olive, Yellow, Navy, Blue, Teal, Aqua. ž Hintergrundfarbe: (nur IPF) alle Farben in Groįbuchstaben: DEFAULT, BLUE, CYAN, GREEN, NEUTRAL, RED, YELLOW, BLACK. ž Phrase element: (nur HTML) ADDRESS, PRE, EM, STRONG, DFN, CODE, SAMP, KBD, VAR, CITE. ž Schrift-Typ: (nur IPF) Alle Eingaben, die nicht den bisherigen Kriterien entsprechen. Beachten Sie, daį statt Leerzeichen wie bei "Tms Rmn" unbedingt ein Unterstrich "_" geschrieben werden muį. Sie mssen nur diejenigen Parameter eintragen, die vom Standardwert abweichen. .IF IPFDOC Die standardm„įig verwendete Codepage h„ngt bei IPF von Einstellungen im OS/2-Betriebssystem bzw. vom Parameter hinter IPFC ab. .END Beachten Sie bitte, daį Sie IPF- und HTML-Kommandos hier mischen k”nnen, so daį ein Schrift-Buchstabe sowohl das Outfit im IPF als auch im HTML-Format festlegen kann. vgl. Schrift-Beispiele und Farb-Beispiele .2 link specific settings (Einst. bzgl. Querverweise) endings of words (Endungen von W”rtern) .in endings of words .snb //endings in german words: e n en s es //endings in english words: s es 's ion ions ing ings ending of words = e n en s es .sn Siehe Querverweise, Verfahrensweise bei Wortendungen. Wenn Sie einen deutschen Text mit vielen englischen Ausdrcken verwenden, werfen Sie am besten die empfohlenen Endungen beider Sprachen zusammen: .snb ending of words = e s es n en 's .sn Text for link to (Text fr Querverweise zu ...) .snb Text for link to subchapters = @Unterkapitel:@ Text for link to next chapter = @n„chstes Hauptkapitel:@ //only HTML frames text for link to main chapter = zum Hauptkapitel .sn .IF HTMLDOC Werden HTML Frames erstellt, so werden zwei Gliederungsebenen gleichzeitig angezeigt. Im Fenster mit dem Unterkapitel wird zu Beginn ein Querverweis auf das Hauptkapitel gezogen; andere Querverweise wie "Inhalt" werden in solchen Fenstern nicht gezogen, da diese schon im Hauptkapitel-Fenster vorhanden sind. Der Querverweis zum Hauptkapitel ist erforderlich, um bei einem direkten Aufruf des Unterkapitels zum restlichen Dokument zu gelangen und kann nicht abgeschaltet werden. .END .in Querverweise zu Unterkapitel .in link to subchapters .sao HyperMake zieht automatisch ~Querverweise~ am Ende eines Kapitel-Fensters zu allen Unterkapiteln dieses Kapitels sowie zum nachfolgenden Kapitel gleicher Gliederungsebene bzw. h”herer Gliederungsebene. Hier k”nnen Sie eintragen, was HyperMake ber solche automatischen ~Querverweise~ schreiben soll. Sie drfen nicht nur Buchstaben, sondern auch Umschalter oder Grafikzeichen verwenden. Wenn Sie ein NO in Groįbuchstaben eingeben, zieht HyperMake keine solchen Kapitel-Querverweise: .snb Text for link to subchapters = NO Text for link to next chapter = NO .sn no more links in (keine weiteren Querverweise in ...) .in no more links in .snb //possible Settings: PARAGRAPH, WINDOW no more links in = PARAGRAPH .sn Zweite und dritte Querverweise k”nnen in einem Absatz (paragraph) oder innerhalb eines gesamten Kapitels (window) unterdrckt werden. siehe Querverweise, Unterdrcken von Querverweisen. .2 HTML specific settings (HTML-spezifische Einst.) title in every file (Titel in jeder Datei) Standardm„įig wird der Titel am Anfang jeder Datei wiederholt, dies kann mit .snb title in every file = NO .sn abgeschaltet werden. First and last line (erste und letzte Zeile) .snb //only HTML: first and last line in file title in every file = YES function for first line = BACK FORWARD CONTENT INDEX text for first line = zurck vorw„rts Inhalt Stichw”rter function for last line = FORWARD CONTENT INDEX text for last line = vorw„rts Inhalt Stichw”rter .sn HyperMake erzeugt zahlreiche HTML-Dateien. Der Benutzer sollte am Textende zur nachfolgenden Datei springen k”nnen (FORWARD) und am Anfang zur vorherigen Datei (BACK). Auįerdem sollte aus jeder Datei heraus das Inhaltsverzeichnis (CONTENT) und Stichwortverzeichnis (INDEX) erreichbar sein. Ob alle derartigen Funktionen sowohl in der ersten Zeile (first line) als auch in der letzten Zeile (last line) zur Verfgung stehen sollen, kann hier eingestellt werden, auch die Reihenfolge der Funktionen sowie die W”rter, die den Querverweis darstellen (text for...). Buttons (Druckkn”pfe) .snb //you can use buttons BACK.GIF FORWARD.GIF CONTENT.GIF INDEX.GIF instead of text buttons = YES .sn Fr die erste und letzte Zeile k”nnen die Querverweise "zurck vorw„rts Inhalt Stichw”rter" sowohl als Text als auch als Grafik-Buttons dargestellt werden. Die Namen der GIF-Dateien sind fix. Wenn sich die GIF-Dateien nicht in dem Verzeichnis befinden, das auch die HTML-Dateien enth„lt, dann erscheint statt den Buttons der Text, den Sie unter "text for first/last line" definiert haben. Wenn die Dateien sich auf einem Unix-Server befinden, wird Groį- und Kleinschreibung unterschieden! Achten Sie deshalb auf die korrekte Schreibweise der Dateinamen. Beachten Sie bitte die Button-Bibliothek von HyperMake im Verzeichnis BUTTONS. body tags ("body" Eintr„ge) .snb //enter tags or NO body tags = NO .sn Es k”nnen diverse HTML body tags eingetragen werden, etwa .snb body tags = background="backgr.gif" TEXT="#00FFFF" .sn .IN Farbe Hintergrund .IN Farbe Text Standard Gehen Sie behutsam mit body tags um! Wenn Sie etwa einen blauen Hintergrund w„hlen, sind die Querverweise nicht mehr sichtbar. Beachten Sie dabei, daį manche Benutzer andere Standardfarben gew„hlt haben wie Sie! Nur wenn Sie einen berwiegend weiįen oder grauen Hintergrund w„hlen, gehen Sie kein Risiko ein. extended index (Groįes Stichwortverzeichnis) .in extended index .snb entries for extended index = 30 .sn Hier k”nnen Sie einstellen, ab welcher Zahl von Indexeintr„gen das groįe Stichwortverzeichnis statt dem kleinen erzeugt werden soll. new file level (Gliederungsebene der Unterteilung in Dateien) .snb //HTML text file is divided in several files. //Enter heading level where new file begins (0 means only one HTML text file) new file level = 3 .sn HyperMake erzeugt aus einer Quelldatei viele HTML-Dateien. Dies verbessert die Geschwindigkeit der Browser ganz erheblich. Mit dieser Einstellung k”nnen Sie beeinfluįen, wieviel Dateien erstellt werden sollen. "3" bedeutet, daį fr die Kapitel der Gliederungsebenen 1, 2 und 3 grunds„tzlich neue HTML-Dateien begonnen werden. In Bereichen, in denen die Fensteranordnung (Frames) aktiv ist, erzeugt HyperMake jedoch fr alle Kapitel grunds„tzlich eigene Dateien. Wenn 0 eingegeben wird, so wird nur eine HTML-Datei (plus Stichwortverzeichnis und Inhaltsverzeichnis) erstellt (falls keine Fensteranordnung verwendet wird). horizontal rule level (Gliederungsebene der Trennung durch horizontale Striche) .snb //Enter heading level up to which has to be divided by horizontal rules // (0 means no rules) horizontal rule level = 4 .sn HTML l„įt horizontale Striche ber das ganze Fenster hinweg zu. Diese k”nnen dazu genutzt werden, einzelne Kapitel voneinander zu unterteilen, falls sie ohnehin nicht in unterschiedlichen HTML-Dateien liegen. Der Wert fr "horizontal rule level" muį deshalb h”her sein als der fr "new file level". "4" bedeutet, daį die Kapitel 1., 2., 3. und 4. Ordnung mit einem Strich getrennt werden, falls sie in derselben Datei abgelegt werden. content level (angezeigte Ebenen im Inhaltsverzeichnis) .in context level .snb //Enter heading level up to which has to be shown in the HTML content file // (6 means all levels, 0 means no content) content level = 6 .sn Mit diesem Schalter k”nnen Sie einstellen, bis zu welcher Gliederungsebene die šberschriften im Inhaltsverzeichnis erscheinen sollen. Wird 0 eingestellt, werden weder die Inhaltsverzeichnis-Seite noch Querverweise dorthin erstellt. pre filename (Beginn der Dateinamen) .snb //pre filename = XYZ* let all HTML files begin with XYZ pre filename = * .sn (Registrierung erforderlich) HyperMake erstellt aus einem Quelltext eine groįe Zahl von Dateien. Diese Dateien haben Namen, die HyperMake festlegt. So werden einfach Nummern fr Dateinamen vergeben: N000.HTML, N001.HTML usw. Um in nur einem Pfad mehrere unterschiedliche HyperMake-Texte haben zu k”nnen, l„įt sich ein String eingeben, der all den Dateinamen incl. INDEX.HTML vorangestellt wird. Beispielsweise fhrt die Eingabe von ~XYZ*~ dazu, daį die Dateinamen dann XYZN000.HTML, XYZN001.HTML usw. heiįen. Achten Sie bei alten FAT-Laufwerken bitte selbst darauf, daį die 8-Buchstaben-Begrenzung eingehalten wird. (Das bedeutet, der pre filename darf nicht mehr als 3 Buchstaben haben.) HTML Dateinamen .snb //possible settings: sample.html SAMPLE.HTML Sample.html sample.htm SAMPLE.HTM Sample.htm filename appearance = sample.html .sn Hier k”nnen Sie festlegen, wie von HyperMake erzeugte Dateinamen aussehen sollen (Groį- oder Kleinschreibung, kurze oder lange Dateinamen). Wenn Sie HTML-Dateien im WWW ver”ffentlichen wollen, sollten Sie das Kapitel ber Dateinamen lesen. Wenn diese Einstellung falsch ist, kann es vorkommen, daį auf Ihrem Rechner die Links funktionieren, auf dem Server aber nicht mehr! Standard-Frame .snb default frame = _top .sn Wenn s„mtliche HTML-Seiten des Dokuments in einem Frame eines anderen Dokuments erscheinen sollen, kann diese Einstellung ge„ndert werden. Die Žnderung dieses Standardwertes erfordert fortgeschrittene Kenntnisse in HTML und ist im Regelfall nicht erforderlich. Titelzeile und Meta-Anweisungen .snb //here you can define the text appearing in the browser titlebar //enter DOCTITLE and/or HEADING and fixed text, e.g. a slash; NO means no text file title = DOCTITLE - HEADING meta content = DOCTITLE - HEADING .sn Hier k”nnen Sie den Inhalt der Titelzeile des HTML-Browsers und Meta-Anweisungen fr Internet-Suchmaschinen festlegen. DOCTITLE entspricht dem Text, den Sie hinter ~.TI~ geschrieben haben, HEADING ist der šberschrifts-Text der aktuellen HTML-Seite. šberschrift bei einer separaten Fuįnoten-Seite .snb notes text = Anmerkungen .sn Wenn ein Quelltext mit Fuįnoten von HyperMake mit dem Kommandozeilenparameter "/NOFRAMES" kompiliert wird, erzeugt HyperMake eine einzige groįe Datei mit allen Fuįnoten-Inhalten. Diese tr„gt dann die šberschrift, die sie unter ~notes text~ festlegen. Sinnvolle Bezeichnungen sind Fuįnoten, Anmerkungen, Quellennachweise, Querverweise, Literaturangaben. Diese Bezeichnung kann dann auch in der Titelzeile der entsprechenden HTML-Seite erscheinen. .2 IPF specific settings (IPF-spezifische Einst., nicht HTML) Help Subtable Start ID (Startwert fr ID-Konstanten) .snb Help Subtable Start ID = 7000 .sn Mit der Help Subtable Start ID k”nnen Sie einen Startwert fr die ID's angeben, die die Subtables definieren. Das brauchen Sie nicht zu „ndern, auįer Sie definieren in Ihrem Programm-Quelltext selber auch schon Konstanten mit Werten von 7001, 7002 usw. Filenames (Dateinamen) .in Filenames .snb //files will be overwritten without warning Helptable filename = HLPTABLE.RC Panel ID filename = PANELID.H .sn Hier k”nnen Sie die Dateinamen der Helptable- und Panel-ID-Datei „ndern, die automatisch von HyperMake generiert werden. Wenn Sie als Dateiname *.XYZ eingeben, wird als Dateiname der Quell-Dateiname mit der entsprechenden Erweiterung gew„hlt. Achtung! Die beiden Dateien werden ohne Vorwarnung berschrieben. .1 Starten des HyperMake Compilers Das HyperMake-Programm ist ein Compiler, der von der Kommandozeile gestartet wird, „hnlich IPFC. .in Installation .in kompilieren .in compiling .in Kommandozeilenparameter Beim Betriebssystem OS/2 mssen Sie, bevor Sie HyperMake benutzen k”nnen, mssen Sie HMAKE.EXE in einen Pfad kopieren, der in der Datei CONFIG.SYS unter PATH vorkommt; die Datei KBDVIO32.DLL muį in einem Pfad sein, der unter LIBPATH vorkommt. Findet die EXE-Datei die DLL nicht, so erscheint die OS/2-Fehlermeldung "0005". Sie mssen ein oder zwei Parameter bergeben: .snp .fu [C:\myProject] HMAKE MeinDoku.txt Meine.ini .sn .fu[] Die Reihenfolge der Parameter ist egal. Die Dateinamen-Erweiterungen mssen Sie aber auf jeden Fall angeben. Die Ini-Datei muį immer mit ".INI" enden, die Erweiterung des HyperMake Quelltextes ist beliebig. Wenn Sie ohne Erweiterung den gleichen Dateinamen fr Text- und Ini-Datei verwenden wie etwa MeinDoku.txt und MeinDoku.ini, so reicht es aus, nur den Namen des HyperMake Quelltextes anzugeben - HyperMake sucht dann nach der entsprechenden Ini-Datei: .fu .snp [C:\myProject] HMAKE MeinDoku.txt .sn Wenn HyperMake keine derartigen Ini-Dateien findet, sucht er im aktuellen Verzeichnis noch nach HMAKE.INI. Wenn diese auch nicht vorhanden ist, bricht das Programm ab. Fr Ihre eigene Ini-Datei benutzen Sie als besser eine Kopie von BEISPIEL.INI als von DOKU.INI. In letzterer sind recht ausgefallene ASCII-Werte fr die Toggles gew„hlt. .snL Mehrere Quelltexte .sn Sie k”nnen Ihren Quelltext auf mehrere Dateien verteilen. HyperMake kopiert die Dateien dann zusammen, bevor es mit der eigentlichen Arbeit beginnt. Dabei gilt die Reihenfolge der šbergabeparameter. Wenn nicht explizit eine Ini-Datei angegeben wird, so wird der Name der Ini-Datei vom ersten Quelldateinamen abgeleitet. .snL HTML- oder IPF-Dateien erzeugen .sn Mit den Kommandozeilenparametern ~HTML~ und ~IPF~ kann die Standardeinstellung "target file" in der Ini-Datei tempor„r berschrieben werden. .IF HTMLDOC .snL Frames-lose HTML-Dateien erzeugen .sn .fu .iv keine Frames Der Kommandozeilenparameter ~/NOFRAMES~ erzeugt Frames-lose HTML-Seiten. Er hat zwei Effekte: Zum einen werden alle ~.FA~ bzw. ~.WA~ (Fensteranordnung) Punktbefehle nicht ausgefhrt. Zum anderen werden alle Fuįnoten in eine einzige Fuįnotendatei geschrieben und die Fuįnoten erhalten fortlaufende Nummern wie [17], auf die der Benutzer klicken kann. .END .fu[] .2 Wie HyperMake vorgeht Nachdem HyperMake aufgerufen wurde, geht das Programm wie folgt vor: .sao ž Einlesen der Ini-Datei ž Einlesen des Quelltextes Der Quelltext wird mit einem Schlag in den Heap geladen ž Indizieren der Kapitelberschriften Alle Kapitelberschriften bzw. Kapitel erhalten eine Identifizierungsnummer. ž Indizieren der Querverweise Alle W”rter oder Ausdrcke, die mit dem Indexzeichen oder mit den entsprechenden Punktbefehlen markiert sind, werden im Heap abgelegt. ž Schreiben der IPF-Datei oder der HTML-Dateien Zuletzt wird die IPF-Datei bzw. werden die HTML-Dateien erstellt, was die Hauptarbeit ist. Jedes Wort des Hypertextes muį mit den indizierten W”rtern aus dem Heap verglichen werden, um ggf. Querverweise zu ziehen. Hier werden auch die meisten Punktbefehle und Umschalter ausgewertet sowie Helptables im Heap erstellt. HTML-Dateien werden in einen ggf. neu anzulegenden Pfad gespielt. .IF HLPDOC ž Schreiben der Helptable-Datei Bei der Verwendung von RC-Punktbefehlen im HyperMake Quelltext wird die im Heap angesammelte Information ber den Helptable in der Helptable-Datei abgespeichert. .END Beim Indizieren von Kapitelberschriften, Indizieren von Querverweisen und dem Schreiben der IPF-Datei erscheint fr jedes bearbeitete Kapitel (Fenster) ein Punkt am Bildschirm. Ert”nt ein tiefer ęPiepston, so hat HyperMake einen so schweren Fehler gefunden, daį die IPF-Datei bzw. die HTML-Dateien nicht erstellt werden konnten. .IF HTMLDOC Als Dateinamen-Erweiterung fr HTML-Dateien wird ".HTML" gew„hlt. Nur auf FAT-Laufwerken wird ".HTM" verwendet. .END .2 Schreiben von Batch-Dateien .IF IPFDOC Weil das IPF-Format nicht mehr von Interesse ist, kann man HyperMake und IPFC ber eine ę:Batch-Datei: (mit der Endung ".CMD") aufrufen. Eine vernnftige Batch-Datei zum Abarbeiten im Hintergrund ist die folgende: .snb @echo off rem Erstellung eines Hypertextes mit HyperMake und IPFC HMAKE %1.txt %1.ini >HyperMake_errors ipfc /inf %1.ipf /country=049 /language=deu >ipfc_errors echo  .sn Die letzte Zeile enth„lt zwei Zeichen Alt-7, das ergibt zwei Piepser. Wenn Sie eine fehlerhafte INF- bzw. HLP-Datei erhalten, k”nnen Sie die ASCII-Dateien HyperMake_errors und ipfc_errors lesen (bzw. beim FAT-Dateisystem krzere Dateinamen). Wenn Sie hinter ipfc nicht /inf schreiben, so wird eine HLP-Datei statt einer INF-Datei erzeugt. Die von HyperMake erzeugte IPF-Datei kann immer fr beides verwendet werden, selbst wenn Sie HLP-spezifische ressource connection und Panel ID Punktbefehle verwendet haben. Wenn Sie mit Batchdateien nicht vertraut sind, so k”nnen Sie darber unter "OS/2-Befehle (nach Funktion sortiert), Stapeldatei- und Befehlsverarbeitung" im OS/2-Referenzhandbuch nachlesen. .END IPFDOC Denken Sie beim Sichern Ihrer Festplatte daran, daį Sie HTML-Dateien bzw. IPF-Dateien nicht sichern mssen, weil Sie sie jederzeit aus dem HyperMake Quelltext reproduzieren k”nnen. .IF HTMLDOC Bei der Erstellung von HTML-Dateien l„įt sich eine Batchdatei schreiben, die zuerst die alten HTML-Dateien l”scht und dann HyperMake aufruft: .snb del %1\*.html HMAKE %1.txt #Bedingung >HyperMake_errors edit HyperMake_errors .sn .END HTMLDOC .2 Debug-Modus .in Fehlersuche Es kann leider vorkommen, daį HMAKE bei der Arbeit abstrzt, weil eine bislang unbedachte Situation eintritt. Um zu lokalisieren, wo genau der Absturz erfolgt, kann man mit Hilfe des Parameters ~/count~ die aktuellen Zeilennummern ausgeben und anschlieįend mit Hilfe von ~/debug~ dann kurz vor der Absturz-Stelle die entsprechende Textstelle im Quelltext ausgeben lassen. Mit ~/debugmain~ statt ~/debug~ wird der Text nur w„hrend des Schreibens der IPF/HTML-Dateien ausgegeben. Ich bitte um Benachrichtigung bei derartigen Abstrzen. Bitte schicken Sie mir einen Quelltext und Ini-Datei, so daį ich den Absturz reproduzieren und dann einkreisen kann, damit bei der n„chsten Version dann eine saubere Fehlermeldung erscheint. .1 Rckw„rts-Konvertierung von IPF nach HyperMake Wenn Sie einen Text schon im IPF-Format vorliegen haben, hilft Ihnen HyperMake bei der Rck-šbersetzung ins HyperMake Quelltext-Format. Es gibt noch keinen v”llig perfekten Quelltext, aber die wichtigsten Funktionen werden korrekt bersetzt. Die ęRckw„rts-Konvertierung ist zu folgendem in der Lage: ž Umschalter (toggles) ž Kapitel ž unsortierte Listen, sortierte Listen ž die wichtigsten Formatierbefehle (paragraph, break, Formatieren ein/aus) ž Indexeintr„ge (nur i1 Ebene), sie werden auch gleich zum Querverweis-Ziel ž Grafiken. Nicht funktioniert das folgende: ž Schriften ž Fensteranordnung ž R„nder ž Fuįnoten ž definition list ž Panel ID's, die Verbindung zu einem EXE Programm. Bei der Rckw„rts-Konvertierung wird auch die Ini-Datei gelesen. Werfen Sie vorher schon einen Blick auf die Einstellungen "list char", "toggle char" and "Source format". Achten Sie vor allem darauf, daį gengend "list char" definiert sind, also etwa vier Stck wenn im IPF-Text Listen mit bis zu vier Ebenen vorkommen. .sab Um die Rckw„rts-Konvertierung zu starten, geben Sie neben der Ini-Datei noch eine Datei mit der Erweiterung ~IPF~ ein. .snp .fu [C:\myProject] HMAKE meineDok.ipf meineDok.ini .sn .fu[] Es wird grunds„tzlich eine HyperMake Quelldatei mit dem Namen HMSOURCE.TXT erstellt. .FA verti 25 .1 šber HyperMake .in HyperMake .2 Registrierung .saL .inRegistrierung .in Preis Dieses Programm ist ~Shareware~ wenn Sie gr”įere Quelltexte als 20 kB bearbeiten lassen m”chten. Dafr mssen Sie einen Registrierungsschlssel anfordern. Kleinere Quelltexte als 20 kB lassen sich auch ohne Registrierungsschlssel compilieren, in diesem Fall ist es ~Freeware.~ Warum gerade 20 kB? Ich bin der Meinung, daį fr die Erstellung kurzer HTML-Texte und INF- und HLP-Dateien fr einfache Freeware-Programme die Benutzung von HyperMake kostenlos sein sollte. Wenn Sie also Fehler finden und nicht registriert sind, drfen Sie mir gerne trotzdem eine Mail schicken. Es gibt einen kleinen (bis 150 kB Quelltext) und einen groįen Registrierungsschlssel (unbegrente Quelltextl„nge). Die Registrierungsgebhr fr den kleinen Schlssel betr„gt ~60 Deutsche Mark~ oder ~40 Dollar~ und fr den groįen Schlssel ~120 Deutsche Mark~ oder ~70 Dollar~. Beim Erwerb von mehreren Lizenzen erhalten Sie 30% Rabatt fr jede zus„tzliche Lizenz. Wenn Sie Zugang zu Compuserve haben, k”nnen Sie diese Software ber Compuserve registrieren lassen. Go ~SWREG~. Die Nummer (Registration ID) lautet ~9988~ fr den kleinen und ~15175~ fr den groįen Schlssel. Die Schlssel passen fr die Versionen aller Plattformen und auch fr knftige Versionen. Meine Kontoverbindung lautet: Dresdner Bank Ottobrunn (Deutschland), BLZ 700 800 00, Nr. 075 64 62 400 Bitte senden Sie mir keine Fremdw„hrung! Ich mįte 15 DM Umrechnungsgebhr an meine Bank zahlen! Schicken Sie mir dann lieber DM (oder zur Not Banknoten Ihrer W„hrung) einfach per Post in einem Briefkuvert. Wenn Sie sich nicht ber Compuserve registrieren lassen, erhalten Sie eine Rechnung ber den entsprechenden Betrag und ihren Registrierungsschlssel auf dem Postweg. Den Registrierungsschlssel tragen Sie in Ihren HyperMake Ini-Dateien unter "registration key" ein. .2 Haftungsausschluį Der Autor bernimmt keinerlei Haftung fr Sch„den, sei es durch fehlerhafte Bedienung oder durch Fehler im Programm. Es wird auch keine Garantie ber die Registrierungsgebhr hinaus gegeben. .2 Autor ..in Ich .in Autorenadresse Martin Vieregg, 30. Ich habe Betriebswirtschaft mit Schwerpunkt Verkehrswirtschaft studiert. Ich arbeite in einer Zwei-Mann-Beratungsgesellschaft. Unser Spezialgebiet ist der ™ffentliche Verkehr, speziell Eisenbahn. Das Thema meiner Doktorarbeit lautet "Effizienzsteigerung im Schienenpersonenfernverkehr" (ISBN 3-929115-51-4). .sno Meine Mailadresse ist: .sn Martin Vieregg Compuserve 100661,626 vom Internet aus: Martin Vieregg 100661.626@COMPUSERVE.COM Meine Postanschrift lautet: Dr. Martin Vieregg Hubertusstr. 26 D-85521 Ottobrunn .2 Versionen .snL Ideen zu knftigen HyperMake-Versionen .sn ž Graphische Oberfl„che, evtl. mit Editor; Wenn der Benutzer den Quelltext abspeichert, wird HyperMake automatisch im Hintergrund aktiv ž weitere Computer-Plattormen ž Untersttzung von Microsofts neuem kontextsensitives HTML ž Untersttzung des WinHelp Formates (lohnt sich das noch?) ž Rckw„rts-Konvertierung von RTF nach HyperMake (Rich text format, bisheriges Eingabeformat der Windows-Hilfe). Auf meiner Homepage werden Sie entsprechende Ankndigungen finden. Wenn Sie selbst Ideen haben, schicken Sie mir doch eine Email! .snL Neue Funktionen in HyperMake 3.0 .sn ž Tables (Tabellen-Funktion) sowohl fr IPF als auch fr HTML ž Benutzerdefinierte Navigations-Kn”pfe (Buttons) in Erg„nzung zu back, forward, content, index, sie zeigen dann auf bestimmte Kapitel oder auf eine URL ž Benutzer head tags (insbes. Meta-Anweisungen), die in jede HTML-Datei kopiert werden ž genaue Steuerung der Groį/Kleinschreibung und 8.3 Schreibweise von Dateinamen ž benutzerdefinierte Einstellungen fr die Titelzeile im HTML-Browser ž Kommandos zur Fehlersuche ž Ver„nderung des Erscheinungsbildes von Querverweisen zu Unterkapitel ž flexiblere Anwendung der Umschaltzeichen (toggle chars) ž HTML Schriften (Fonts) ž Button-Bibliothek. .snL Neue Funktionen in HyperMake 2.9 .sn ž zus„tzlich HTML als Zielformat ž Rckw„rts-Konvertierung von IPF nach HyperMake ž index filter ž mehrere Quelltexte (siehe Kommandozeilenparameter) ž (2.91) erste Version auch als Win32-Programm verfgbar ž (2.91) Fuįnoten auch fr HTML. .snL Bereinigte Fehler in (neuer Name) HyperMake 2.9 .sn ž "link to subchapters = NO" fhrte zu Programmabsturz ž Bei Verwendung der IPFC Version 2.1 von 1993 und der Einstellung "ASCIIHARDRET" fehlte in l„ngeren Abs„tzen nach ca. 200 Buchstaben ein Leerzeichen. ž Bei der Einstellung "ASCIIHARDRET" traten Probleme mit unsortieren Listen auf. .snL Neue Funktionen in MakeIPF 2.0 .sn ž externe Querverweise (external links) zu separaten HLP- und INF-Dateien hin ž Programme starten mittels Querverweise ž automatische Duplizierung von Kapitelberschriften im Flieįtext, Kapitelberschrift als Querverweis-Sprungziel, Aufnahme von Kapitelberschriften in den Index ž zahlreiche neue Fehlermeldungen, die sonst erst beim IPFC-Compiler kommen ž Tabs werden automatisch in die entsprechende Anzahl Leerzeichen verwandelt (nur bei Schrift mit festen Schritten sinnvoll) ž verbesserte Fensteranordnung (siehe letzten Absatz im besagten Kapitel) ž Registrierung ber Compuserve .snL Bereinigte Fehler in MakeIPF 2.0 .sn .in neue Version ž Fehler beim Ausdrucken von INF/HLP-Texten (feste Schrift "tritt auf der Stelle") ž Fehlerhafte Anzahl von Returns bei "Formatieren aus" Darber hinaus wurden zahlreiche kleinere Fehler beseitigt. .snL Gefundene Fehler und Verbesserungen MakeIPF Beta 0.91 nach 1.0 .sn ž Absturz "access denied" kommt nicht mehr vor; geringerer Speicherbedarf ž jetzt mit dem endgltigen (Nicht-Beta) SpeedPascal Compiler erstellt. (Datenumleitung jetzt o.k.) ž automatischer Rand .AM ž If-Bedingungen ž Verbesserung der automatischen Querverweise, insbes. Wortendungen ž diverse Fehler beseitigt .2 Wo Updates? .snL Wo Sie HyperMake finden .sn Sie finden die neueste HyperMake OS/2 Version in Compuserve OS2UGER und OS2BVEN. Im Internet sind es die blichen OS/2-Adressen ftp-os2.nmsu.edu, ftp.cdrom.com/pub/os2 und auf dem Mnchner ftp.leo.org/pub/comp/os/os2. Die Win32-Version gibt es auf ftp.leo.org/pub/comp/os/win95 und im Compuserve in WINGER und GERWIN. Die OS/2-Version finden Sie unter Hmakeo*.ZIP. Die Win32-Version finden Sie unter HmakeW*.ZIP. Haben Sie Ideen zu neuen Funktionen fr HyperMake? Ich freue mich ber jeden Kommentar oder Verbesserungsvorschlag. .2 Warenzeichen IBM und OS/2 sind eingetragene Warenzeichen der International Business Machines Corp. WordStar ist eingetragenes Warenzeichen von MicroPro. SpeedPascal ist ein Warenzeichen von SpeedSoft GmbH. TurboPascal ist eingetragenes Warenzeichen von Borland Corp. Windows ist eingetragenes Warenzeichen von Microsoft. .2 Betriebssysteme .iv verschiedene Betriebssysteme Sie waren bestimmt von der Verarbeitungsgeschwindigkeit sehr angetan. Dabei gibt es eine kleine šberraschung: Ich habe das Programm nicht in C geschrieben, sondern mit Speed-Pascal[SpeedSoft, Chemnitz], einem TurboPascal-kompatiblen OS/2-Compiler mit IDE. Er erzeugt sowohl OS/2- als auch Win32-Programme. Fr die Zukunft ist noch Powermac, Linux und AIX geplant, so daį es auch fr diese Plattformen HyperMake geben wird. .2 Andere Progs Ich habe noch einige kleine Programme programmiert, es ist meist Freeware. Auįer Textbuch sind es nur OS/2-Programme (bis jetzt...), alle Programme haben auch deutsche Dokumentation. ž PMCALC20 PmCalc 2.0, ein PM Taschenrechner mit automatischer Zwischenablagenuntersttzung, hex und wissenschaftlichen Funktionen (auch in deutsch, Shareware) ž TINYALRM TinyAlarm 2.1, Uhr mit Eieruhr als Schieber von 1 bis 60 and einem Wecker, bei dem man eine Weckzeit einstellen kann ž ZIPSHELL Simple Zipshell, eine Handvoll kleiner Batch-Dateien, um mit ZIP- und ARJ-Dateien elegant ber die WPS umgehen zu k”nnen (auch in Deutsch) ž CD_SHORT CD Shortcut 2.0, Abkrzung fr den CD-Befehl. Statt vollst„ndiger Verzeichnisnamen gibt man nur Wortteile ein (Anleitung auch in Deutsch) ž CLEAR10G Clear 1.0, erzeugt Dateilisten zum zippen auf Disketten und zum L”schen, mit komplexen Auswahlkriterien ž TEXTBUCH 1.0 (auch DOS, nur deutsch). Doppelte Buchfhrung fr Selbst„ndige und kleine bis mittlere GmbH's. Arbeitet wie ein Compiler. Input und Output sind Textdateien. Umfangreiche INF-Datei (OS/2-Version), Textdatei (DOS-Version), HTML-Datei (Win32-Version). Shareware bei > 350 Buchungss„tze pro Jahr. Sie finden die OS/2-Programme in Compuserve OS2UGER 7 und im Internet unter ftp.leo.org/pub/comp/os/os2. Auf meiner Homepage finden Sie Beschreibungen und Screenshots der Programme. pmCalc werde ich nach Win32 portieren. Ende des Hypertextes .. ..Externer Querverweis auf meine Homepage und auf die Button-Bibliothek .URL http://ourworld.compuserve.com/homepages/vrb/VIEREGG.HTM .ID HOMEP .in Homepage .URL ..\..\buttons\content.htm .in Button-Bibliothek .LOCAL